diff options
author | Ettore Perazzoli <ettore@src.gnome.org> | 2003-06-10 01:31:26 +0800 |
---|---|---|
committer | Ettore Perazzoli <ettore@src.gnome.org> | 2003-06-10 01:31:26 +0800 |
commit | fd2f3a6d7adb1fbc154c9a8493bfb44b979da1cb (patch) | |
tree | d92902feb3bc61a35fe4b600dc42465e8bcacb90 /filter | |
parent | 1c5f741b4bc521c6d7a83907fd3dca5be32a7f79 (diff) | |
download | gsoc2013-evolution-fd2f3a6d7adb1fbc154c9a8493bfb44b979da1cb.tar.gz gsoc2013-evolution-fd2f3a6d7adb1fbc154c9a8493bfb44b979da1cb.tar.zst gsoc2013-evolution-fd2f3a6d7adb1fbc154c9a8493bfb44b979da1cb.zip |
Roll over ChangeLogs.
svn path=/trunk/; revision=21387
Diffstat (limited to 'filter')
-rw-r--r-- | filter/ChangeLog | 2967 | ||||
-rw-r--r-- | filter/ChangeLog.pre-1-4 | 2967 |
2 files changed, 2967 insertions, 2967 deletions
diff --git a/filter/ChangeLog b/filter/ChangeLog index ece5ee7998..e69de29bb2 100644 --- a/filter/ChangeLog +++ b/filter/ChangeLog @@ -1,2967 +0,0 @@ -2003-05-05 Jeffrey Stedfast <fejj@ximian.com> - - * filter-colour.c (format_sexp): Format the colour string in a way - that gdk_color_parse() will handle. Apparently it no longer - handles rgb:<red>/<green>/<blue>? Fixes bug #42345. - -2003-04-24 Jeffrey Stedfast <fejj@ximian.com> - - Fix for bug #41578. - - * rule-editor.c (rule_move): Pass re->source instead of - re->current->source to rule_context_get_rank_rule(). Also updated - to pass re->source to rule_context_rank_rule(). - (rule_editor_play_undo): Updated to pass re->source to - rule_context_rank_rule(). - - * rule-context.c (rule_context_rank_rule): Now takes a 'source' - argument rather than using rule->source (vfolder editor lists - rules of all sources, not just same-source rules). - (revert): Pass frule->source/part->source to - rule_context_rank_rule() - might not be right but should preserve - the prior behaviour at least. - -2003-04-18 Not Zed <NotZed@Ximian.com> - - * rule-editor.c (d): removed debug spew. - - * addresses #41398 - - * vfolder-rule.c (format_source): helper function to decode a url - into a more user-friendly format. - (source_add, get_widget): add the formatted data as another - column to the table. - (vfolder_editor_sourcelist_new): add another column to the table, - a formatted uri as well as the raw one. - (d): turned off debug vomit while i'm here. - -2003-04-11 Jeffrey Stedfast <fejj@ximian.com> - - Fixes for bugs: #41149, #41150, #41151, #41152, #41153, #41155, - #41156, #41205, and #41208. - - * filter-filter.c (get_widget): Same as with filter-rule. - - * filter-rule.c (get_widget): Changed border widths of frame - vboxes and other padding to comply with the HIG. - - * rule-editor.c (rule_add): Change window border and padding - around the 'rules' widget to comply with the HIG. - (rule_edit): Same. - (rule_editor_construct): Same here as well. - - * filter.glade: Many HIG compliance fixes. - -2003-03-28 Not Zed <NotZed@Ximian.com> - - * filter-datespec.c (button_clicked): cast warning. - -2003-03-26 Jeffrey Stedfast <fejj@ximian.com> - - * filter-file.c (xml_decode): Loop over child nodes here too in - order to not be affected by libxml2 crack. - - * filter-source.c (xml_decode): Fixed to disreguard libxml2 crack. - (get_widget): Use strcmp instead of e_url_equal(). - -2003-03-20 Dan Winship <danw@ximian.com> - - * filter-datespec.c (timespans, set_button): Change the strings in - the timespans array from "second" / "seconds" to "1 second ago" / - "%d seconds ago", etc, and update the code in set_button that uses - them. Fixes #36245, translation clash between the "second" here - and the one in the calendar (where it's used as "2nd"). - (button_clicked): Fix this so we don't get stuck inside - gtk_dialog_run's main loop forever. - -2003-03-20 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c (rule_editor_set_sensitive): Don't return here - - this is a void function. - (rule_editor_set_source): Same. - -2003-03-18 Not Zed <NotZed@Ximian.com> - - * rule-context.c (new_rule_response): use the same code as in - filter-rule to enforce unique names for all rules/vfolders. - -2003-03-17 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c (rule_editor_construct): Set the default window - size to something reasonable (350x400?). Fixes bug #39808. - - * vfolder-rule.c (source_remove): Fixed to work properly. Fixes - bug #39654. - - * rule-editor.c (rule_editor_construct): Always add a Cancel - button here, but if !enable_undo - make the response id - GTK_RESPONSE_CANCEL rather than GTK_RESPONSE_REJECT (which does - undo). This mimics the behaviour that was done in the mail/ code - previously. Fixes bug #39809. - -2003-03-11 Not Zed <NotZed@Ximian.com> - - * rule-context.c (revert): go to the proper level of child node - before looking for rule sets, fix for #39165 to make 'cancel' work. - -2003-03-06 Jeffrey Stedfast <fejj@ximian.com> - - Fixes for bug #39170 - - * filter-element.c (filter_element_xml_create): Remove return - keyword. - (filter_element_build_code): Same. - (filter_element_format_sexp): Here too. - -2003-02-20 Not Zed <NotZed@Ximian.com> - - * filter-source.c (filter_source_get_sources): Change to use - EAccountList, etc. - -2003-02-12 Jeffrey Stedfast <fejj@ximian.com> - - * vfolder-rule.c (source_add): Get rid of the need for the - GTK_WIDGET_DESTROYED() check. - -2003-02-07 Jeffrey Stedfast <fejj@ximian.com> - - * filter-editor.c (filter_editor_new): Use g_object_new() - instead of gtk_type_new(). - - * vfolder-editor.c (vfolder_editor_new): Use g_object_new() - instead of gtk_type_new(). - - * score-editor.c (score_editor_new): Use g_object_new() instead of - gtk_type_new(). - - * rule-editor.c (rule_editor_new): Use g_object_new() instead of - gtk_type_new(). - (rule_add): Use gtk_window_set_resizable() instead of the - deprecated gtk_window_set_policy(). - (rule_edit): Same here. - (rule_editor_construct): Here too. - - * rule-context.c (rule_context_add_rule_gui): Use - gtk_window_set_resizable() instead of the deprecated - gtk_window_set_policy(). - -2003-02-05 Dan Winship <danw@ximian.com> - - * Makefile.am (gladedir): Defined in configure.in now - (filterdir): Define using privdatadir - -2003-01-22 Ettore Perazzoli <ettore@ximian.com> - - * Makefile.am (gladedir): Version using $(BASE_VERSION). - (filterdir): Likewise. - -2003-01-15 Not Zed <NotZed@Ximian.com> - - * vfolder-rule.c (get_widget): dont re-use 'widget', its the - return value! - -2003-01-15 Jeffrey Stedfast <fejj@ximian.com> - - * rule-context.c (save): Back to using e_xml_save_file(). - -2003-01-14 Ettore Perazzoli <ettore@ximian.com> - - * rule-editor.c (rule_add): Change dialog from OK/Cancel to - Cancel/OK to match HIG. - (rule_edit): Likewise. - (rule_editor_construct): Likewise. - - * rule-context.c (rule_context_add_rule_gui): Change dialog from - OK/Cancel to Cancel/OK to match HIG. - - * filter-datespec.c (button_clicked): Change dialog from OK/Cancel - to Cancel/OK to match HIG. - -2003-01-03 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c (add_editor_response): Scroll to the newly added - row. Fixes bug #3725. - (rule_delete): Scroll to the selected row. - (rule_move): After moving the row, re-select it and then scroll to - make sure that it is still visible. Fixes bug #7800. - -2003-01-02 Jeffrey Stedfast <fejj@ximian.com> - - Fixed to build with -DG_DISABLE_DEPRECATED and - -DGTK_DISABLE_DEPRECATED - -2002-12-12 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c (cursor_changed): Use an easier method for getting - the iter. - -2002-12-12 Jeffrey Stedfast <fejj@ximian.com> - - * vfolder-rule.c (vfolder_editor_sourcelist_new): New custom - function for creating the source_list widget. - (get_widget): Removed the source_list creation code. - - * rule-editor.c (rule_editor_construct): Listen to row-activated - for double-click events. Also, removed the model creation code out - of here. - (rule_editor_treeview_new): Moved the treeview and model creation - code into here instead, and made the glade widgets into custom - widgets. - -2002-11-26 Not Zed <NotZed@Ximian.com> - - * vfolder-rule.c (get_widget): Add a textcellrenderer to display - the folders. - (get_widget): Remove FIXME which was wrong. - - * filter-rule.c (filter_rule_validate): FILTER_RULE_CLASS -> - _GET_CLASS - - * rule-context.c (rule_context_save): RULE_CONTEXT_CLASS -> - RULE_CONTEXT_GET_CLASS - (rule_context_revert): " - - * *.[ch]: Ran fix.sh over all files. - - * rule-editor.c (rule_add): widget:set_parent -> - window:set_transient_for - (editor_response): renamed from editor_clicked, handle gtk dialog - response codes. - (rule_edit): connect to response rather than clicked. - (rule_editor_construct): Setup a text column in the tree view. - Not sure if this can be handled via glade. - -2002-11-20 Jeffrey Stedfast <fejj@ximian.com> - - * filter-label.c (xml_create): gconfify. - -2002-11-18 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c: Updated to use GtkTreeView. - - * vfolder-rule.c: Same. - -2002-11-13 Not Zed <NotZed@Ximian.com> - - * rule-context.c (load): Get the root node properly. - - * rule-editor.c (rule_add): cast g_object_weak_ref - (rule_edit): " - - * all: xml2 node change - childs->children. Also, ignore 'text' - nodes while scanning tree. - - * rule-context.h: gnome-xml->libxml. - - * filter-element.h: gnome-xml->libxml - - * vfolder-rule.c (source_add): comment out gtk_destroyed check. - - * filter-label.c: Added back some of the guts. Might not work but - some of the code uses it :-/. Gives u a fixed set of non-editable - labels. - -2002-11-08 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c (rule_edit): Use weak_ref instead of connecting to - "destroy". - (rule_add): Same. - -2002-11-07 Jeffrey Stedfast <fejj@ximian.com> - - * vfolder-rule.c (validate): Use a GtkDialog instead of a - GnomeDialog for reporting errors. - - * rule-editor.c (rule_add): Use a GtkDialog instead of - GnomeDialog. - (rule_edit): Same. - (add_editor_response): Use a GtkMessageDialog for the error - reporting instead of a GnomeDialog. - (edit_editor_response): Same. - - * rule-context.c (rule_context_add_rule_gui): Use a GtkDialog - instead of a GnomeDialog. - - * filter-rule.c (validate): Use GtkDialog instead of GnomeDialog - here. - - * filter-input.c (validate): Use GtkDialog instead of GnomeDialog - here. - - * filter-folder.c (validate): Use GtkDialog instead of GnomeDialog - here. - - * filter-file.c (validate): Use GtkDialog instead of GnomeDialog - here. - - * rule-editor.c: Subclass GtkDialog instead of GnomeDialog. - - * filter-datespec.c (validate): Use GtkDialog instead of - GnomeDialog. - (button_clicked): Same. - -2002-11-06 Jeffrey Stedfast <fejj@ximian.com> - - * filter-label.c (xml_create): Deleted most of the internals until - we devise a gconf schema and redesign how we want to do this. It - didn't work correctly for 1.2 anyway. - - * filter.glade: Converted to the glade-2 format. - -2002-11-05 Jeffrey Stedfast <fejj@ximian.com> - - * filter-filter.c: Ported. - - * filter-source.c (get_widget): Don't use e_utf8_to_gtk_string. - - * filter-option.c (xml_create): Don't use e_utf8_xml1_decode. - - * filter-input.c (xml_encode): Don't use e_utf8_xml1_encode. - (xml_decode): Don't use e_utf8_xml1_decode. - (entry_changed): Don't use e_utf8_gtk_entry_get_text. - (get_widget): Don't use e_utf8_gtk_entry_set_text. - - * filter-file.c (xml_encode): Don't use e_utf8_xml1_encode shit. - (xml_decode): Don't use e_utf8_xml1_decode. - (entry_changed): Don't use e_utf8_gtk_entry_get_text. - (get_widget): Don't use e_utf8_gtk_entry_set_text. - -2002-11-05 Jeffrey Stedfast <fejj@ximian.com> - - * vfolder-rule.c: Ported. - - * vfolder-editor.c: Ported. - - * vfolder-context.c: Ported. - -2002-11-05 Jeffrey Stedfast <fejj@ximian.com> - - * filter-rule.c: Ported. - - * score-rule.c: Ported. - - * score-editor.c: Ported. Again, thise code seems to be unused. - - * score-context.c: Ported. Although it seems this code isn't - really used anywhere? - -2002-11-04 Jeffrey Stedfast <fejj@ximian.com> - - * filter-part.c: Ported. - - * filter-editor.c: Also ported. - - * rule-editor.c: Ported to gtk2 and removed unnecessary e_utf8 snot. - -2002-11-02 Jeffrey Stedfast <fejj@ximian.com> - - * filter-context.c: Ported this too. - - * rule-context.c: Ported to glib2/GObject. - -2002-11-01 Jeffrey Stedfast <fejj@ximian.com> - - * filter-element.c: Ported to GObject. - - * filter-input.c: Same. - - * filter-code.c: This too. - - * filter-colour.c: And this. - - * filter-datespec.c: You guessed it. - - * filter-file.c: And again... - - * filter-folder.c: Wheee! This is fun... - - * filter-int.c: Gee, I wonder... - - * filter-label.c: Also ported. - - * filter-option.c: Yep, this too. - - * filter-source.c: And finally this one. - -2002-10-30 Dan Winship <danw@ximian.com> - - * rule-editor.c (rule_add): Adjust default rule editor size to - accomodate the menu widening caused by "Pipe Message to Shell - Command". - -2002-10-10 Jeffrey Stedfast <fejj@ximian.com> - - * filtertypes.xml: Removed the Run Once filter action. - -2002-09-30 Aaron Weber <aaron@ximian.com> - - * filter-folder.c (validate): adjust string on 149 to "You must - specify a folder. - - * filter-datespec.c (get_best_span): adjust string on 174 from - "You have forgotten to choose a date" to "You must choose a date." - -2002-09-25 Dan Winship <danw@ximian.com> - - * filter-folder.c (get_widget): Use "mail/*" as the allowed folder - type. - - * vfolder-rule.c (source_add): Likewise - -2002-09-22 Dan Winship <danw@ximian.com> - - * filter-context.c (filter_delete_uri): add empty statement after - label to make it ANSI. - -2002-09-19 Not Zed <NotZed@Ximian.com> - - * filtertypes.xml: Changed source account, use header-source - rather than (= (get-source) ...) - -2002-09-13 Jeffrey Stedfast <fejj@ximian.com> - - * filtertypes.xml: Add a Run Once action to run a command only - once rather than for each message that has that action applied. - -2002-08-08 Not Zed <NotZed@Ximian.com> - - * rule-editor.c (add_editor_clicked): Dont allow duplicate names. - (edit_editor_clicked): Same here. For #24803. - -2002-08-06 Jeffrey Stedfast <fejj@ximian.com> - - * rule-context.c (save): Don't need to save temp/backup files - anymore, e_xml_save_file() now handles this for us (well, at least - the saving of temp files). I'm not sure we need a backup file - anymore now that we can depend on e_xml_save_file() to "Just Work" - -2002-08-06 Jeffrey Stedfast <fejj@ximian.com> - - * rule-context.c (save): Use e_xml_save_file(). - (xml_doc_save): Removed this code and added it to gal so that - e-table and all other parts of evolution and so forth could use - it. - -2002-08-05 Jeffrey Stedfast <fejj@ximian.com> - - * rule-context.c (xml_doc_save): New internal function to replace - xmlSaveFile. Does proper error checking and so forth to ensure - that the resulting file does not ever get truncated. - (save): Cal xml_doc_save rather than xmlSaveFile. Fixes bug - #25980. - -2002-08-02 Not Zed <NotZed@Ximian.com> - - * filter.glade: Added a datespec editor window. - - * filter-datespec.c (button_clicked): Rewritten to use glade. - Simplified all the code around it as a result, etc, and fixed bug - #21798. - -2002-08-01 Peter Williams <peterw@ximian.com> - - * filter-datespec.c (activate_specified): If the value was unset, - initialize it to now. - -2002-07-31 Ettore Perazzoli <ettore@ximian.com> - - * filter-option.c (xml_create): Remove unused variable. - -2002-07-30 Peter Williams <peterw@ximian.com> - - * filter-rule.c (get_widget): Translate the rule name when filling - in the name entry. - -2002-07-29 Jeffrey Stedfast <fejj@ximian.com> - - * filtertypes.xml: Add xml to unset system flags. - -2002-07-26 Jeffrey Stedfast <fejj@ximian.com> - - * filter-int.c (xml_decode): Use fs->type in xmlGetProp since we - already free'd 'type'. Fixes bug #28113. - - * filter-element.c: Removed the empty private struct. - - * filter-int.c: Removed the empty private struct. - -2002-07-25 Jeffrey Stedfast <fejj@ximian.com> - - * filter-int.[c,h]: Use GtkType (I only changed this one because I - turned on debugging for a bit). - - * filter-file.c (validate): Fix the strcmp logic a bit, I had it - the exact opposite of what I really wanted. Oops :-) - -2002-07-25 Jeffrey Stedfast <fejj@ximian.com> - - * filter-file.c (validate): Do some minimalistic validation of - command-lines (ie, make sure it isn't an empty string). - - * filtertypes.xml: s/shell-exec/shell/ (for the action) and pass - "/bin/sh" "-c" as the first 2 arguments. For the shell-exec - *rule*, change the name to "pipe-message" and add the "/bin/sh" - "-c" arguments too. - -2002-07-17 Jeffrey Stedfast <fejj@ximian.com> - - * filter-label.c (xml_create): Use the U_() macro to get the UTF-8 - translation. - -2002-07-15 Not Zed <NotZed@Ximian.com> - - * filter-score.[ch]: cvs remove. - - * filter-element.c: Remove reference to filter-score.h - - * vfoldertypes.xml: Fix label vfolder rule as below, also add - score and size rules from filtertypes.xml. - - * filtertypes.xml (score): Use (cast-int (user-tag "score")) to - get the value directly, rather than (get-score). - (label): Use (user-tag "label") to get the value directly, rather - than (get-label). The label is now a string too. - - * filter-label.c (filter_label_get_type): Make filter-label - inherit from filter-option. Which makes more sense doesn't it - ... surely. - (validate): Removed, optionlists are self-validating. - (xml_create): Initialise the list of options from our - configuration database. If it isn't working, ignore it and set it - up anyway. - (filter_label_init): Override the xml type. - (filter_label_count): - (filter_label_label): - (filter_label_index): Some helper functions for external - interfaces. All of the mail config/etc should use this. - - * filter-option.c (free_option): - (xml_create): - (clone): Made the "value" type in glib memory rather than xml - memory space. - (filter_option_add): Utility function to add a new option to the - list. - (clone): Use above function to simplify code. - (xml_create): Same here. - (xml_encode): Allow subclasses to override the type. - -2002-07-10 Not Zed <NotZed@Ximian.com> - - ** fixes for #10781 - - * filter-int.c (xml_encode): - (xml_decode): Handle encoding/decoding with a type name, in a - manner compatible with the score/label elemtns. - (filter_int_new_type): New constructor to create a generic 'int' - type. - - * filter-score.c: Removed. Now relies on using a filter-int with - appropriate settings. - - * filter-label.[ch]: Now inherits from filter-int. - - * rule-context.c (rule_context_revert): New method to revert a - filter context back to a user-file's definition. - (revert): implementation. - - * filter-rule.h: Added new virtual method _eq and wrapper, and - fixed all subclasses to implement it. - - * filter-element.h: Added new virtual method _eq and wrapper. - Fixed all subclasses to implement it. - -2002-07-08 Jeffrey Stedfast <fejj@ximian.com> - - * filtertypes.xml: Make the sound type for (play-sound ) a "file" - type rather than "string" since users will want to use a filesel - to select it most likely. Fixes bug #26921. - - * filter-file.c (validate): If the type is "file" check that it is - a valid file, otheriwse if it is a command-line just ignore it for - now. - - * filter-element.c (filter_element_new_type_name): A filter type - of "file" should also use the filter-file object. - -2002-05-24 Ettore Perazzoli <ettore@ximian.com> - - * filter-rule.c (get_widget): Fix English grammar. - -2002-05-16 Jeffrey Stedfast <fejj@ximian.com> - - * vfoldertypes.xml: Added a label definition. - - * filtertypes.xml: Added a label definition. - - * filter-label.c: New filter widget for labels. - - * filter-element.c (filter_element_new_type_name): Add support for - the new label widget. - - * filter-int.c (format_sexp): Fixed a memory leak. - -2002-05-09 Jeffrey Stedfast <fejj@ximian.com> - - * filter-file.c (get_widget): Set the path in the entry widget. - - * Makefile.am: Add filter-file.[c,h] to the build. - - * filtertypes.xml: Add a "Command" filter rule. - - * filter-element.c (filter_element_new_type_name): Add support for - type "command" which uses the new FilterFile widget. - - * filter-file.[c,h]: New filter widgets for choosing files and/or - command-line's (?). Not yet hooked up or anything, just for future - use. - -2002-05-08 Not Zed <NotZed@Ximian.com> - - * rule-context.c (rule_context_delete_uri): Changed to return a - GList *, a list of the names of the rules affected by the delete, - fixed all implementors. - (rule_context_rename_uri): Similarly for delete_uri, for - api consistency. - (rule_context_free_uri_list): Util function to free the return - from above. - - * filter-context.c (filter_delete_uri): Actually implement it, fix - for #18826, and some related bugs. - -2002-04-26 Jeffrey Stedfast <fejj@ximian.com> - - * Makefile.am: Get rid of ibex stuff, we no longer use it. - -2002-04-18 Jeffrey Stedfast <fejj@ximian.com> - - * filtertypes.xml: The score "is" rule should have a value of "is" - and not "less-than". - -2002-04-12 Jeffrey Stedfast <fejj@ximian.com> - - * filter-rule.c (get_widget): Fixed a grammer mistake, or so - according to bug #23376. Whatever. - -2002-04-11 Russell Steinthal <rms39@columbia.edu> - - * filtertypes.xml: Fix "Follow Up" searches by generating a - boolean, rather than a string result (Fixes #23334) - - * vfoldertypes.xml: Ditto - -2002-04-09 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c (double_click): This needs to return a gboolean - (TRUE). - (rule_edit): Using gnome_dialog_set_parent instead of - gtk_widget_set_parent_window seems to fix bug #23226. - -2002-04-10 Not Zed <NotZed@Ximian.com> - - * filter-input.c (validate): Check that there is a value to - setup. Fixes #15470. - - * filtertypes.xml: Added closing ) for "not starts with" subject - rule. - Added closing ) for all the other broken rules too ... - -2002-04-04 Dan Winship <danw@ximian.com> - - * filter-folder.c: Remove the #ifndef SHELL part. Use an - EvolutionFolderSelectorButton. Remove FilterFolder->name since - it's no longer needed. - - * filter-context.c (filter_rename_uri): Update for removal of - FilterFolder->name. - - * filter-element.c (filter_element_copy_value): Likewise. - - * vfolder-rule.c (source_add): Update for - evolution_shell_client_user_select_folder API change. - -2002-04-01 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c (rule_edit): Set 're' as the parent window rather - than as the parent widget. - (add_editor_clicked): Only unref the editor if it is non-NULL. - -2002-03-18 Jeffrey Stedfast <fejj@ximian.com> - - * filter-source.c (filter_source_get_sources): Free account_name - so we don't leak. Also after getting the source uri, use camel-url - to hide unwanted stuff. - (xml_decode): Use xmlFree on the buffer returned from - xmlNodeGetContent rather than g_free, as I think they are - incompatable. Also use camel-url here to hide any params in the - decoded url (to make things compatable with what older versions - may have saved). - -2002-03-06 Jeffrey Stedfast <fejj@ximian.com> - - * filtertypes.xml: Added beep and play-sound actions. - -2002-02-26 Not Zed <NotZed@Ximian.com> - - * filter-filter.c (option_activate): Copy values across to new - part. - - * filter-rule.c (option_activate): copy values across to new part, - if they are compatible. - - * filter-element.c (filter_element_copy_value): New function to - copy values (where they can be) from one filter element to another. - - * filter-part.c (filter_part_copy_values): New function to copy - values of a filter part. #1359. - -2002-02-12 Jeffrey Stedfast <fejj@ximian.com> - - * vfoldertypes.xml: - * filtertypes.xml: Re-added contains and - not-contains. Also added filter/vfolder rules for - Flag-for-Followup. - -2002-02-04 Jeffrey Stedfast <fejj@ximian.com> - - * vfoldertypes.xml: Same here. - - * filtertypes.xml: For mlist matching, we only want "is" and "is - not" because that is all we really support anyway. - -2002-01-27 Ettore Perazzoli <ettore@ximian.com> - - * Makefile.am: Use LIBFILTER_CFLAGS. - -2002-01-26 Mikael Hallendal <micke@codefactory.se> - - * rule-editor.c (add_editor_clicked): check if re->edit != NULL - before trying to unref it. Fixes a segfault when closing the - rule editor. - -2002-01-15 Not Zed <NotZed@Ximian.com> - - * filter-input.c (xml_decode): If we write "" to an xml file, we - read back NULL. So if we read back NULL, convert it to "". - Sigh. This makes a fix for #7801, although new gui may also be - required. - -2002-01-03 Jeffrey Stedfast <fejj@ximian.com> - - * filter-source.c (filter_source_get_sources): Get the account - name because that is the string we'd like to use for display. - (get_widget): Generate the account label the same as we do for the - composer's From optionmenu. - (filter_source_finalize): Free the account_name. - (clone): Pass along the account_name member to filter_add_source - -2002-01-02 Jeffrey Stedfast <fejj@ximian.com> - - * vfoldertypes.xml: Make the date comparisons read the same as the - ones in filtertypes.xml - -2001-12-17 Jeffrey Stedfast <fejj@ximian.com> - - * filtertypes.xml: Add new action to execute a shell command. - -2001-12-09 Jon Trowbridge <trow@ximian.com> - - * vfoldertypes.xml: Add "Needs Reply" option to different status - types. - - * filtertypes.xml: Add "Needs Reply" option to different status - types. - -2001-11-15 Zbigniew Chyla <cyba@gnome.pl> - - * rule-editor.c (set_source): Removed U_. Fixes #15415. - -2001-11-21 Not Zed <NotZed@Ximian.com> - - * rule-editor.c (rule_edit): Hook onto destroy event. - (edit_editor_destroyed): IF we get destroyed, fake a -1 click - event to clean up. - (rule_add): hook onto destroy of dialogue. - (add_editor_destroyed): Simulate -1 click event to clean up. Fix - for #15745. - -2001-11-20 Not Zed <NotZed@Ximian.com> - - * vfolder-rule.c (source_add): Desensitise button while we're - running, and if we are destroyed, exit and do nothing when we're - done. Fixes crash in #15498. - - * filter-folder.c (button_clicked): Ref 'ff' around dialogue - showing incase we go away before it returns. Also desensitise - button that invoked us while its being processed & remove - 'is_active' hack. Fixes similar problems to those in #15498. - -2001-11-12 Jeffrey Stedfast <fejj@ximian.com> - - * filter-rule.c (validate): Force the user to name the filter. - - * vfolder-rule.c (validate): Force the user to name the vfolder. - -2001-10-29 <NotZed@Ximian.com> - - * rule-editor.c: Some debug printf fixes for printf's that dont - like null %s's. - Fixed previous fix. - (rule_editor_play_undo): Need to ref rule since add doesn't. This - doesn't crash anymore but doesn't seem to do everything right either. - -2001-10-28 <NotZed@Ximian.com> - - * filter-context.c (filter_rename_uri): Implement, change any - folder uri's that have been renamed, to the new one. - (filter_delete_uri): Dont actually do any work (yet). - - We could probably put rename_uri on every rule context/filter - part/filter element, and let their methods handle it, but for now - its easy enough just to handle the few cases that we have to - handle manually. - - * rule-context.c (rule_context_delete_uri): Update a filter - context for a deleted uri, e.g. folder removed. - (rule_context_rename_uri): Update a filter context for a renamed - uri, e.g. - - * filter-folder.c (filter_folder_set_value): New function to set - the uri of a folder filter. - - * rule-editor.c (rule_move): Add undo for move. - (rule_editor_add_undo): Add extra rank item. - (rule_editor_play_undo): handle rank case. - (rule_editor_finalise): Clean up any hanging over undo log. - (editor_clicked): Only enable 'undo' if we have - EVOLUTION_RULE_UNDO enabled. Code still a bit flakey. - (rule_editor_construct): Only enable a cancel button if - EVOLUTION_RULE_UNDO is set. - (rule_editor_add_undo): Only add if undo enabled. - (rule_editor_add_undo): Fix enable undo logic. - - * filter-rule.c (filter_rule_set_name): Emit a changed event if it - changes. - (filter_rule_set_source): Same. - -2001-10-26 <NotZed@Ximian.com> - - * rule-context.c (rule_context_find_rank_rule): Find a rule at a - specific rank/source. - - * rule-editor.c (add_editor_clicked): Log the added object. - (rule_editor_add_undo): New function to add an undo record to the - rule editor. - (edit_editor_clicked): Log the changed object. - (rule_delete): Add undo object. - (rule_editor_play_undo): Play an undo log back. - -2001-10-26 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c (rule_add): Desensitize the parent dialog. - (rule_edit): Same. - (add_editor_clicked): Re-sensitize it. - (edit_editor_clicked): Same. - -2001-10-25 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c: Keep track of the current editor dialog window so - that on exit, we can close it too. - (rule_edit): Don't make the dialog modal and set it's parent - window as well as don't allow more than a single editor window to - be popped up. - (rule_add): Same. - -2001-10-24 <NotZed@Ximian.com> - - * rule-context.c (rule_context_class_init): Add a changed signal. - Emits if the order changes or if you add or remove a rule. - (rule_context_rank_rule): Fix rank rule to properly rank based on - source, not merely on list position. - (rule_context_add_rule): Also emit changed signal. - (rule_context_remove_rule): Same. - (rule_context_rank_rule): Emit changed signal. - -2001-10-20 Jon Trowbridge <trow@ximian.com> - - * rule-editor.c (set_source): Translate the rule names. (Bug - #13082) - -2001-10-17 Ettore Perazzoli <ettore@ximian.com> - - * filter-folder.c (button_clicked): Pass the toplevel to - `evolution_shell_client_user_select_folder()'. - * vfolder-rule.c (source_add): Likewise. - -2001-10-15 Jeffrey Stedfast <fejj@ximian.com> - - * filter-folder.c (button_clicked): Kludge to raise the filter - dialog when the folder-selection window is closed. - -2001-10-15 <NotZed@Ximian.com> - - * filter-input.c (xml_decode): If we have no node content, dont - append any value or try to decode it. Gets rid of a bunch of - annoying warnings. - -2001-10-04 Jeffrey Stedfast <fejj@ximian.com> - - * vfolder-rule.c (validate): And again here. - - * filter-folder.c (validate): Same. - - * filter-datespec.c (validate): Take out the "Oops" part of the - warning. - -2001-10-04 <NotZed@Ximian.com> - - * rule-context.c (save): "safe" save code, first save to .#name, - then rename to name if it worked, also create backups to name~. - Means filters/etc wont get reset/lost if disk fills up, although - relies on libxml failing properly. - (new_rule_clicked): Removed warning, we do now have changed - signals! - -2001-09-28 <NotZed@Ximian.com> - - * vfolder-rule.c (vfolder_rule_add_source): Emit changed events - when we change it. - (vfolder_rule_remove_source): " - -2001-09-28 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c (edit_editor_clicked): Set the item label to the - new rule name, not the old rule name. Fixes bug #11168. - -2001-09-27 <NotZed@Ximian.com> - - * vfolder-rule.c (xml_decode): Use g_strdup for the uri, not the - xml memory. - - * filter-driver.c, filter-message-search.c: Removed, again, how - did they come back??? - -2001-09-13 <NotZed@Ximian.com> - - * filter-filter.c (filter_filter_add_action): - (filter_filter_remove_action): - (filter_filter_replace_action): Emit changed events. - - * filter-rule.c (filter_rule_xml_decode): Emiot a rule changed - event. - (filter_rule_copy): Emit a changed event. - (filter_rule_replace_part): " - (filter_rule_add_part): " - (filter_rule_remove_part): " - (filter_rule_xml_decode): Freeze around decoding, so we only emit - changed when done. - (filter_rule_emit_changed): New function to emit changed events if - not frozen. - -2001-09-13 <NotZed@Ximian.com> - - * rule-context.c (rule_context_class_init): Added a 'rule_added' - and 'rule_removed' signal. - (rule_context_load): Set a (private) frozen flag while we're - loading. - (rule_context_add_rule): Emit a rule_added signal if we're not - frozen. - (rule_context_remove_rule): Emit a rule_removed signal if we're - not frozen. - -2001-09-12 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c (rule_edit): Clone the current rule before editing - it so that changes can be undone. - (edit_editor_clicked): If the user hit OK, replace the original - rule with the new one. - - * vfolder-rule.c (vfolder_rule_finalise): Free the sources list. - (rule_copy): Implemented. - - * filter-filter.c (rule_copy): Implemented. - - * filter-rule.c (filter_rule_copy): New convenience function to - copy one rule "into" another. - (rule_copy): Default implementation. - (filter_rule_clone): Use filter_rule_copy() internally to get rid - of the nastiness/slowness of xml encoding and then decoding. - -2001-09-12 <NotZed@Ximian.com> - - * vfoldertypes.xml: Remove the match-all from the not - body-contains, so we can use the new vector not function. - -2001-09-10 <NotZed@Ximian.com> - - * filter-score.c (format_sexp): Encode the score as an integer - string, not as a string of integers. #5098. - -2001-09-10 Jeffrey Stedfast <fejj@ximian.com> - - * filter-datespec.c (button_clicked): Allow the dialog's title to - be translated. - -2001-08-19 Chris Toshok <toshok@ximian.com> - - * filter-input.c: #include <sys/types.h> for regex_t on freebsd. - -2001-08-15 Jeffrey Stedfast <fejj@ximian.com> - - * filter.glade: Added key accelerators. - -2001-08-14 Peter Williams <peterw@ximian.com> - - * filter-rule.c (xml_decode): Match either "title" or "_title" to - allow for translations of the title (provided in the default - files) - -2001-08-13 Peter Williams <peterw@ximian.com> - - * filter-datespec.c (make_span_editor): Add a gettext around our static - strings. - (format_time): New function. Convert a time_t to a gchar * (with i18n) - (describe_button): Use format_time instead of ctime. - -2001-08-10 Peter Williams <peterw@ximian.com> - - * rule-context.c (rule_context_add_rule_gui): Make this compile again. - -2001-08-10 Jeffrey Stedfast <fejj@ximian.com> - - * rule-context.c (rule_context_add_rule_gui): No need to - gtk_widget_show() the gnome dialog widget twice... - - * vfolder-rule.c (get_widget): Unref the glade_xml gui object - before returning. - -2001-08-08 Radek Doulik <rodo@ximian.com> - - * filter-folder.c (button_clicked): don't mix g_free and xmlAlloc - (xml_decode): don't mix g_free and xmlAlloc - - * filter-code.c (filter_code_init): use xmlStrdup instead of - g_strdup - - * filter-input.c (filter_input_new_type_name): use xmlStrdup - instead of g_strdup - (filter_input_finalise): don't mix g_free and xmlAlloc - - * filter-option.c (clone): use xmlStrdup instead of g_strdup - (free_option): don't mix g_free and xmlAlloc - - * filter-source.c (clone): use xmlStrdup rather than g_strdup - - * filter-element.c (filter_element_finalise): don't mix g_free and - xmlAlloc - -2001-08-07 Not Zed <NotZed@Ximian.com> - - * filter-rule.c (filter_rule_finalise): Properly free the list of - parts, and the private data. - (FilterRulePrivate): Remove unused 'parts' member. - - * filter-option.c (free_option): For freeing options. - (filter_option_finalise): Free options list. - - * filter-element.c (filter_element_finalise): free name. - - * filter-input.c (filter_input_finalise): Free type and values - list. - - * filter-context.c (filter_context_finalise): Free the actions. - - * rule-context.c (rule_context_finalise): Remove the totally weird - arsed *_set_list free code. - (free_part_set): - (free_rule_set): Use this to free stuff using g_list_foreach. - (rule_context_finalise): Free the error string. - (rule_context_finalise): Free the rules and parts. - -2001-08-07 Jeffrey Stedfast <fejj@ximian.com> - - * filtertypes.xml: Reverted my previous change, I fixed the filter - code to handle this the way danw said to handle it in bug #5886 - now. - -2001-08-07 Jeffrey Stedfast <fejj@ximian.com> - - * filtertypes.xml: Removed the "is" and "is not" rules from the - xml file for address matching because users are easily confused. - -2001-08-03 Jeffrey Stedfast <fejj@ximian.com> - - * filter-rule.c (get_widget): Do an evil kludgy hack so that the - Rule Name entry widget gets focused when the filter editor is - shown. - -2001-08-02 Jeffrey Stedfast <fejj@ximian.com> - - * filter-rule.c: Wrap some debug printf's with d(). - - * rule-context.h: Removed prototype for rule_context_delete_rule() - since the function doesn't exist. - -2001-07-23 Jon Trowbridge <trow@ximian.com> - - * vfolder-rule.c (validate): Added a validate function - that checks to make sure that vfolders that have "specific - folders" as their source actually have a non-empty list of - source folders selected. (Bug #4937) - (get_widget): If fr->source is NULL for some reason, bring - it into sync with the default in the option menu. - -2001-07-23 Peter Williams <peterw@ximian.com> - - * filter-datespec.c (make_span_editor): Change the butt-ugly - UI to a saner (and just as flexible) one. Instead of all those - spinbuttons, just have one and let the user select the time unit. - (omenu_item_activated): New function. When the user changes the - time unit, convert it from the old number. Pretty. - (adj_value_changed): This function is now simpler. - (set_adjustments): Also modified for new UI model. - (button_clicked): Set the selected_type before calling the callback. - (FilterDatespecPrivate): Members change a bit. - (filter_datespec_init): No longer need to allocation spinbuttons - (filter_datespec_finalise): No longer need to free spinbuttons. - -2001-07-20 Jeffrey Stedfast <fejj@ximian.com> - - * filtertypes.xml: Removed the "Forward To" filter action. - -2001-07-18 Jeffrey Stedfast <fejj@ximian.com> - - * rule-context.c (rule_context_get_rank_rule): Return -1 if we - don't find it? This is what most of the code expected but not what - we were returning on fail. - -2001-07-12 Zbigniew Chyla <cyba@gnome.pl> - - * filter-datespec.c (stringify_agoness): Marked string for translation. - -2001-07-12 Jeffrey Stedfast <fejj@ximian.com> - - * filtertypes.xml: Users should not be able to filter on "Status - is Deleted" since we don't allow that in the filter driver code. - -2001-07-11 Jason Leach <jleach@ximian.com> - - * vfoldertypes.xml: Copied the "Attachments" rule part over from - filtertypes.xml, would be a powerful feature for vfolders (see all - the patches across all folders, or all the attachments you've sent, - without having to duplicate potentially big files, blah blah, bug - #1155). - -2001-07-10 Peter Williams <peterw@ximian.com> - - * vfoldertypes.xml: Put a match-all around the not-body-contains - to make it work per-message. - - * filtertypes.xml: Same. - -2001-07-05 Jeffrey Stedfast <fejj@ximian.com> - - * filter-rule.c (get_widget): Set the focus on the title of the - filter rule. - -2001-07-09 Anna Marie Dirks <anna@ximian.com> - - * rule-context.c (rule_context_add_rule_gui): Increased the size - of the "Add Filter Rule" dialog to 600 x 400, so that no resizing - is necessary to use the dialog. - -2001-07-09 Jon Trowbridge <trow@ximian.com> - - * filter-source.c (filter_source_get_sources): Bonobo-conf-ified. - Removed /home/trow hard-wiring. :) - (xml_encode): Encode things properly. - (xml_decode): Decode things properly. - (get_widget): Ignore accounts w/o source URLs. - (clone): Set the ->name in our copy. - -2001-07-05 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c (rule_delete): Select the most appropriate filter - rule. - - * filtertypes.xml: Fix bug #4043: s/colour/color - -2001-07-03 Peter Williams <peterw@ximian.com> - - * filter-source.c (get_widget): Prevent crashing while we work - this out. - - * filter-rule.c (get_widget): Don't try to gtk_widget_grab_default - with a widget that can't be the default. Altough it should be able - to.... - -2001-07-02 Sam Creasey <sammy@oh.verio.com> - - * filter-int.c: Added an integer type for filtering values. used - for size. - - * Makefile.am (SOURCES): added filter-int.c, filter-int.h - - * filtertypes.xml: added a part entry for size based filters - -2001-07-02 Anna Marie Dirks <anna@ximian.com> - - * filter-rule.c (get_widget): Changed "Add criterion" button to - have normal button relief in response to complaints of it not - appearing clickable. - - * filter-filter.c: Changed "Add action" button to have normal - button relief in response to complaints of it not appearing - clickable. - -2001-06-29 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c (rule_editor_construct): Set the filter-rule - dialog to be user-resizable. - -2001-06-27 Jeffrey Stedfast <fejj@ximian.com> - - * filtertypes.xml: Make "Move" the default action. - -2001-05-08 Not Zed <NotZed@Ximian.com> - - * filter-rule.c: Deleted Gediminas patch. - -2001-05-08 Gediminas Paulauskas <menesis@delfi.lt> - - * filter-rule.c (xml_decode): allow "_title" in user - rules. translate them and encode to utf8. - (get_rule_part_widget): do not call gettext on part->title. It is - always translated already. - -2001-04-26 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c (rule_edit): Set the default size of the dialog to - 600x400, which seems to be a nice size that fits all the widgets - into it. - (rule_add): Same. - -2001-04-26 Dan Winship <danw@ximian.com> - - * Makefile.am (INCLUDES): Remove UNICODE_CFLAGS - -2001-04-26 Not Zed <NotZed@Ximian.com> - - * filter-part.c (filter_part_xml_create): Blah blah fix for xml1 - broken utf8 encoding, and use "g" memory for all allocations. - (filter_part_finalise): Free our data properly. - -2001-04-20 Kjartan Maraas <kmaraas@gnome.org> - - * filter-rule.c: Pull up fix for translation of filter - direction drop down menu from the branch. - -2001-04-18 Dan Winship <danw@ximian.com> - - * filter-colour.c, filter-datespec.c, filter-folder.c, - filter-input.c, filter-option.c, filter-rule.c, filter-score.c, - filter-source.c, score-rule.c (xml_decode): Plug memory leaks. - - * rule-context.c (rule_context_finalise): Implement. Free stuff. - - * filter-element.h: #include <gnome-xml/xmlmemory.h> here for xmlFree - - * filter-filter.c, filter-part.c: Remove xmlmemory.h #include - -2001-04-15 Jeffrey Stedfast <fejj@ximian.com> - - * filtertypes.xml: s/Is/is/ and s/Is Not/is not/ to be more - consistant with the rest. - -2001-04-13 Jon Trowbridge <trow@gnu.org> - - * filtertypes.xml: Add XML specs for source account filtering. - - * filter-element.c (filter_element_new_type_name): Recognize - type "source", construct a FilterSource. - - * filter-source.c: Added. A FilterElement for the account e-mail - comes from. - -2001-04-04 Kjartan Maraas <kmaraas@gnome.org> - - * filter-editor.c: Fix headers. - * filter-filter.c: Same here. - * filter-option.c: Same here. - * filter-part.c: Same here. - * filter-rule.c: Same here. - * rule-editor.c: Same here. - * score-editor.c: Same here. - * vfolder-editor.c: Same here. - * vfolder-rule.c: Same here. - -2001-04-02 Jeffrey Stedfast <fejj@ximian.com> - - * filter-filter.c (option_activate): Set the newpart on the - container object. - (less_parts): Remove the rule tht the user wants to remove. - (attach_rule): Attach a new rule and it's remove button to the end - of the table. - (more_parts): Fix to resize the table and such. - (get_widget): Don't have a remove action button, we are putting - this next to the rule part now. - -2001-03-30 Kjartan Maraas <kmaraas@gnome.org> - - * *.*: Fix headers. Remove unneccesary ones and replace - with more finegrained ones where needed. - -2001-03-22 Jeffrey Stedfast <fejj@ximian.com> - - * filter-datespec.c (validate): Oops, an unspecified date is '0', - not -1. - -2001-03-21 Jeffrey Stedfast <fejj@ximian.com> - - * rule-context.c (new_rule_clicked): Validate the rule before - closing. - -2001-03-20 Jeffrey Stedfast <fejj@ximian.com> - - * rule-editor.c (rule_edit): Set the editor dialog modal rather - than setting the filter dialog insensitive. Also ref re->edit - since we unref it when the editor closes. This should fix bug - #1905. - (edit_editor_clicked): No need to set the filter dialog sensitive - again. - (rule_add): Set the add-rule dialog modal and don't set the filter - dialog insensitive. - (add_editor_clicked): No need to set the filter dialog sensitive - again. - -2001-03-17 Jeffrey Stedfast <fejj@ximian.com> - - * filter-option.c (build_code): Since we are now using - filter-option widgets in place of system-flag, we do not need a - "code" part so if there isn't a code part, don't build it. - (clone): Updated to allow NULL code parts. - -2001-03-17 Jeffrey Stedfast <fejj@ximian.com> - - * filter-element.c (filter_element_new_type_name): If the filter - type is a "system-flag", use the optionlist type as type - system-flag has been removed. This should allow backward - compatability. - - * filter-editor.c (filter_editor_construct): Remove the menu that - is in the glade file because we want to replace it with our menu, - not append items to that menu. - - * filtertypes.xml: Oops, missed the system-flag action-set. - - * vfoldertypes.xml: Update "status" ruleset. - -2001-03-16 Jeffrey Stedfast <fejj@ximian.com> - - * Makefile.am: Removed filter-url.[c,h] and - filter-system-flag.[c,h] - - * filter-element.c (filter_element_new_type_name): Removed - references to the url-type and system-flag types. - - * filtertypes.xml: Removed "source" type and fixed "status" to use - the optionmenu. - - * filter-url.[c,h]: Removed. - - * filter-system-flag.[c,h]: Removed (just use optionmenu). - -2001-03-15 Not Zed <NotZed@Ximian.com> - - * filter.glade: Changed the edit_filter to be a standalone window - rather than a widget, so we can get the rule editor part out - separately. Same for vfolder editor, and new score, and basic rule - editors. - - * score-editor.c (score_editor_new): Turned back on object - stuff, subclass rule-editor, and removed most of the code. - - * filter-editor.c (filter_editor_new): Turned into an object, - subclass rule-editor, removed most of the code. Now we accept the - source list during create, and plug that into the glade. - - * vfolder-editor.c (vfolder_editor_new): Turned back on object - stuff, subclass rule-editor, and removed most of the code. - - * Makefile.am (libfilter_la_SOURCES): Added rule-editor.[ch]. - - * filter-filter.c (validate): inherit the validate function and - also validate the actions part of a filterfilter. - - * filter-rule.c (filter_rule_validate): New method so that filter - rules can validate themselves. - (validate): Default implementation, validates base rules. - - * rule-editor.h: New generic rule editor, to be used for filter - editor/vfolder editor/score editor/saved searches editor. - -2001-03-15 Gediminas Paulauskas <menesis@delfi.lt> - - * filter-system-flag.c: translate status flag title. - -2001-03-12 Jeffrey Stedfast <fejj@ximian.com> - - * filtertypes.xml: Added an "Attachments" filter option where you - can filter messages that have (or do not have) attachments. This - does not allow you to filter based on the types of the - attachments. - -2001-03-08 Jeffrey Stedfast <fejj@ximian.com> - - * vfolder-editor.c (double_click): Make sure we have something - selected first ;-) - - * filter-editor.c (double_click): And here too. - -2001-03-03 Not Zed <NotZed@Ximian.com> - - * filter.glade: Added option menu to vfolder editor. - -2001-03-02 Not Zed <NotZed@Ximian.com> - - * vfolder-rule.c (get_widget): Setup the data on the base source - opiton menu, and make hte option menu reflect the source. - (select_source_with): Set the source type for this - rule. e.g. these folders, "with ..." - - * filter-editor.c: Removed the N_() stuff from the source_names - array, they must not be internationalised!!! - -2001-02-28 Not Zed <NotZed@Ximian.com> - - * filter-rule.c (filter_rule_clone): New function to clone rules. - -2001-02-23 Not Zed <NotZed@Ximian.com> - - * filtertypes.xml: Added mailing list matching rules. - renamed mailing list options to be more meaningful. - - * vfoldertypes.xml: Added mailing list rules. - renamed mailing list options to be more meaningful. - -2001-02-11 Gediminas Paulauskas <menesis@delfi.lt> - - * filter.glade.h: removed. - * filter.glade: do not donnt output to above one. - * Makefile.am: do not include filter.glade.h in EXTRA_DIST. - -2001-02-06 Dan Winship <danw@ximian.com> - - * filter-option.c (get_widget): Translate the option title. - (Noticed by Kjartan). - -2001-02-05 Kjartan Maraas <kmaraas@gnome.org> - - * filter-code.c, filter-colour.c, filter-context.c, - filter-element.c, filter-input.c, filter-score.c, - filter-system-flag.c, filter-url.c: Add #include <config.h> - and mark some strings for translation. - -2001-01-22 Not Zed <NotZed@Ximian.com> - - * filter-message-search.[ch]: Removed, now lives in - camel-filter-search.* - - * Makefile.am (libfilter_la_SOURCES): Removed filter-driver.[ch] - and filter-message-search.[ch]. - - * filter-driver.[ch]: Removed. now lives in camel-filter-driver.* - -2001-01-19 Jeffrey Stedfast <fejj@ximian.com> - - * filter-driver.c (filter_driver_filter_message): Set the delete - bit *before* copying to the default folder. - -2001-01-18 Jeffrey Stedfast <fejj@ximian.com> - - * filter-filter.c (less_parts): Er, don't set the button - insensitive if there is *1* action, set it insensitive if there - are less than or equal to *1* actions. Doh! - (more_parts): Only set the remove button sensitive if there is - more than 1 action. - (get_widget): Here too. - -2001-01-16 Jason Leach <jasonleach@usa.net> - - * e-search-bar.[ch]: Moved ESearchBar to $(toplevel)/widgets/misc, - a more appropriate home. Bug #1060. - -2001-01-13 Jeffrey Stedfast <fejj@ximian.com> - - * filter-driver.c (do_copy): Moved p->copied to the inner part of - the loop so that in the case of a folder not existing, it doesn't - think that the message was already copied to some place and thus - not save it to the Inbox. - (do_move): Same. - -2001-01-10 Jeffrey Stedfast <fejj@helixcode.com> - - * filtertypes.xml: Changed Priority to Score. - - * filter-option.c (get_widget): Attach to the "activate" signal - - this should now make it so that a filter-option will "remember" - what a user changed. - - * filter-system-flag.c (get_widget): Don't reset fsf->value to the - first system flag, this should already be defaulted to the - appropriate flag. This should fix the problem of always defaulting - to the first menu option and thus "forgetting" the user's settings. - -2001-01-04 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-system-flag.c: comment out some of the system flags as we - don't want to use them. - (xml_encode): Update the printf - (get_widget): Use strcmp instead of g_strcasecmp. - -2001-01-02 Lauris Kaplinski <lauris@helixcode.com> - - * filter-input.c (xml_encode): Encode utf8 - (xml_decode): Decode utf8 - - * filter-option.c (xml_create): Decode utf8 - - * filter-part.c (filter_part_xml_create): Decode utf8 - - * filter_rule.c (xml_encode): Encode utf8 - (xml_decode): Decode utf8 - -2001-01-02 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (do_flag): Set the 'dirty' flag - this should - fix the problem of flags not being set (or, more precisely, - synced). - (filter_driver_filter_message): Here too. - -2000-12-21 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-message-search.c (header_contains): Use - e_utf8_strstrcase() instead of just strstr(). - (header_starts_with): Make sure that the header contents are - longer than the starts-with string. - - * vfoldertypes.xml: Don't send \"Subject\" to body-contains. - Also added matches, starts-with, and ends-with xml stuff. - -2000-12-28 Dan Winship <danw@helixcode.com> - - * filter-message-search.c (handle_multipart, body_contains, - body_regex): Use CamelContentType rather than GMimeContentField. - -2000-12-24 Not Zed <NotZed@HelixCode.com> - - * Merge from camel-mt-branch. - -2000-12-21 Not Zed <NotZed@HelixCode.com> - - * filter-message-search.c (filter_message_search): And here too. - - * filter-driver.c (filter_driver_finalise): Kind of revert an - accidentally commited patch for e_sexp_unref. - -2000-12-20 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_filter_message): Oops, slight - logic error. We want to copy the message to the default folder if - the message hasn't been Moved (which is the same as Copied && - Deleted). This fixes bug #1007. - - * filter-rule.c (more_parts): Make sure we have more than 1 part - before we sensitize the "remove" button. - -2000-12-20 Not Zed <NotZed@HelixCode.com> - - * filter-message-search.c (filter_message_search): Oops, missed a - gtk unref of the now-no-longer gtk e_sexp. - - * filter-driver.c: Remove mail_tool_lock stuff. - (filter_driver_finalise): unref e_sexp properly. - -2000-12-12 Christopher James Lahey <clahey@helixcode.com> - - * e-search-bar.c (esb_pack_menubar): Fixed some warnings. - -2000-12-11 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-folder.c (button_clicked): Added a kludge, 'is_active' - which is a static variable that holds whether or not there is an - active shell folder dialog up or not. - - * vfolder-editor.c (rule_delete): Autoselect the rule that ends up - in the same position (or the one above it if the list is shorter - than the position). - -2000-12-08 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-rule.c (get_widget): Don't highlight the title if it's - "Untitled" because switching widget focus doesn't cause this - selection to go away. - -2000-12-06 Kjartan Maraas <kmaraas@gnome.org> - - * filter-editor.c: Mark some strings for translation. - -2000-12-01 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-element.c (filter_element_new_type_name): Added support - for the system-flag type. - - * Makefile.am: Added filter-system-flag.[c,h]. - - * filter-system-flag.[c,h]: New type for system flags. - - * filtertypes.xml: Oops, looks like we were still using integers - as arguments to set-flag. Change over to using strings which are - safer and also change the name to set-system-flag. - - * filter-driver.c (do_flag): Use strings instead of integers. - Instead of set-flag, the callback is now set-system-flag for less - confusion. Sorry Ettore, but you'll have to change your filters. - - * filtertypes.xml: Added system-flags stuff. - - * vfoldertypes.xml: And here too. - - * filter-message-search.c (system_flag): New ESExp callback for - filtering on system flags. - -2000-11-30 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_filter_message): Use - camel_message_info_free() instead of freeing everything by hand - - is this a new function? I don't ever recall seeing this - before. Also use my new function, - camel_message_info_new_from_header - ahhh... this code is now so - beatiful. Okay, I'm done. - -2000-11-30 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_filter_message): Update to use - EStrv in appropriate places (wrapped with #ifdef DOESTRV for the - moment). - -2000-11-27 Jeffrey Stedfast <fejj@helixcode.com> - - * filtertypes.xml: Moved the regex filter rule around - we've - changed the format a bit. - - * filter-option.c (option_activate): Removed. - (get_widget): Don't connect the activate signal. - - * filter-folder.c (validate): Updated. - - * filter-datespec.c (validate): Updated. - - * filter-part.c (filter_part_validate): Updated. - - * filter-input.c (validate): Check the filter-input type - if it's - of type "regex", then check for regex validity. - - * filter-element.c (filter_element_validate): No longer takes a - gpointer argument. - (filter_element_new_type_name): Allow type "regex" and create a - new filter-input with type "regex". - -2000-11-24 Michael Meeks <michael@helixcode.com> - - * filter-message-search.c (get_full_header): impl. - (header_full_regex): use it. - -2000-11-23 Michael Meeks <michael@helixcode.com> - - * filter-message-search.c (header_full_regex): impl. - -2000-11-21 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-message-search.c: took out some no longer needed - printfs. - -2000-11-15 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_filter_folder): Sync here - instead. - (filter_driver_filter_mbox): And here too. - (filter_driver_finalise): Don't sync here afterall - it's more - preferable to sync right after processing. - -2000-11-15 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_finalise): Sync the - defaultfolder. - (filter_driver_filter_folder): Sync here instead. - (filter_driver_filter_mbox): And here too. - -2000-11-13 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-message-search.c (header_matches): Neglect any leading - whitespace in the header contents. - (header_starts_with): Same. - (header_ends_with): Same. - (header_soundex): Same. - -2000-11-12 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_filter_message): If there is a - default folder and the message hasn't been deleted then... should - be: If there is a default folder and the message hasn't been - copied to another folder and the message hasn't been deleted... - (filter_driver_filter_message): Make it so that the FILTER_LOG_END - is only called if filtered were applied to the message so we don't - get huge gaps of whitespace in the log file. - (filter_driver_filter_message): - -2000-11-10 Christopher James Lahey <clahey@helixcode.com> - - * e-search-bar.c: Made the underline show up properly in the main - menu bar. - -2000-11-10 Christopher James Lahey <clahey@helixcode.com> - - * e-search-bar.c: Switched from using gtk_menu_item_new_with_label - for the menu header to using gnome_stock_menu_item. - -2000-11-08 Anna Marie Dirks <anna@helixcode.com> - * e-search-bar.c: Fixed two spacing problems: first, changed - the spacing around the end of the text-entry widget so that - the text entry is always aligned with the beginning of the scrollbar; - second, trimmed down the space between the widgets in the search bar. - - -2000-11-06 Not Zed <NotZed@HelixCode.com> - - * filter-driver.c (do_flag): you shouldn't use an integer to - set the flag. You should use a string, and look it up, because - the flag bits might change. - (filter_driver_filter_message): Can som e one PLEASE STOP - INDENTING THE CODE. Even if i have to come over the and - beat it into you. YOU DONT INDENT CODE ONCE ITS BEEN CHECKED IN - TO CVS, otherwise you SCREW UP THE DIFF's. Can't you please - please learn this? - (filter_driver_log): Fixes for api changes to mime_message. - -2000-11-05 Not Zed <NotZed@HelixCode.com> - - * filter-message-search.c (get_sent_date): Fix for date change - api. No longer need to encode/decode the date, after its been - encoded/ecoded already. - (get_received_date): Likewise. - -2000-11-06 Christopher James Lahey <clahey@helixcode.com> - - * e-search-bar.h: Fixed the argument comment. Removed an old enum - that's not used here. - -2000-11-06 Christopher James Lahey <clahey@helixcode.com> - - * Makefile.am: Added e-search-bar.c and e-search-bar.h. - - * e-search-bar.c, e-search-bar.h: Moved this from - e-addressbook-search. - -2000-11-02 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_log): Fix for when 'desc' is - NULL. - (filter_driver_filter_message): Use a more user-friendly filter - name in the log file. - -2000-11-01 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_filter_message): Use - filter_driver_log() where appropriate. - (do_copy): Use the service url for the path rather than the - folder->full_name because that'll only get you a "/mbox" which is - entirely useless. Replace occurences of report_status with - filter_driver_log. - (do_move): Same. - (report_status): Don't use this for logging anymore, use only for - reporting the status back to the caller. - (filter_driver_log): Renamed from filter_driver_status_log. Now - ONLY handles file logging and is for INTERNAL USE ONLY. - (do_flag): Replace occurences of report_status with - filter_driver_log. - (do_score): Same. - (do_colour): Same. - (do_stop): Same. - -2000-11-01 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-datespec.c (validate): Check to make sure the user has - entered a valid date. - -2000-10-31 Jeffrey Stedfast <fejj@helixcode.com> - - * filtertypes.xml: Updated to allow the user to select "sounds - like" or "does not sound like" (uses header-soundex). - - * filter-message-search.c (header_matches): Oops. Should be using - !g_strncasecmp. This should fix it so this filter match works - right. - (header_starts_with): Same. - (header_ends_with): Same. - (header_soundex): New filter callback for soundex matching (yes, - it's probably a bloated feature but hey, it was fun to code) - -2000-10-31 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-folder.c (validate): Override the default validate - function to only return TRUE if a folder has been selected. - - * filter-editor.c (rule_add): Validate that all the rule parts and - action parts are correctly filled in. - (rule_edit): Same. - -2000-10-31 Jeffrey Stedfast <fejj@helixcode.com> - - * filtertypes.xml: Updated to add an action to set message flags. - - * filter-driver.c (do_flag): New callback to set message info - flags. - - * filter-element.c (filter_element_set_data): New convenience - function to set the data on a FilterElement. - - * filter-url.c (get_widget): Set the sources list to point to the - FilterElement data. - -2000-10-31 Federico Mena Quintero <federico@helixcode.com> - - * filter-rule.c (get_widget): Do not pad around the Name hbox; - its parent already has spacing. - Do not pad around the inframe's children; the inframe already has - spacing. - -2000-10-30 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-option.c (option_activate): If a regex option is - selected, change the FilterElement data to TRUE else set to FALSE. - - * filter-rule.c (more_parts): Validate the previously entered - FilterPart before allowing the user to add a new FilterPart. - - * filter-part.c (filter_part_validate): New convenience function - to validate an entire FilterPart expression. - - * filter-input.c (validate): Validate the entry text if it - contains a regular expression. - - * filter-element.[c,h]: New virtual function to validate the - contents of the FilterElement (useful for regex and sexp). - (filter_element_validate): You get the idea... - -2000-10-30 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-input.c: - * filter-option.c: - * filter-part.c: Pure formatting changes, no actual code - changes. Since I know I'm going to get flamed for this, I'm sorry - but I'll probably have to modify code in these files and it's - easier if the code is quickly readable by me. - - * filter-rule.c (get_widget): Set the "remove" button insensitive - for <= 1 instead of == 1. - -2000-10-28 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_filter_message): Copy the message - to the default folder if it wasn't marked as deleted. - -2000-10-27 Jeffrey Stedfast <fejj@helixcode.com> - - * filtertypes.xml: Added header-starts-with, header-ends-with, and - header-exists menu items. - - * filter-message-search.c (header_starts_with): New callback to - match the beginnings of headers. - (header_ends_with): New callback to match the ends of headers. - (header_exists): New callback to determine if a header exists - which is useful when filtering out all those pesky bug-buddy - emails! - -2000-10-27 Jeffrey Stedfast <fejj@helixcode.com> - - * filtertypes.xml: Add header-matches expressions ("is" / "is not"). - - * filter-message-search.c (header_matches): New callback to match - headers exactly (aka strcmp rather than strstr). - -2000-10-27 Jacob "Ulysses" Berkman <jacob@helixcode.com> - - * filter-driver.c (filter_driver_filter_mbox): divide before - multiple so that we don't overflow. - -2000-10-27 Christopher James Lahey <clahey@helixcode.com> - - * Makefile.am: Fixed this to include EXTRA_GNOME_CFLAGS. - -2000-10-27 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (do_move): Don't mark as deleted here, otherwise - the message will have the DELETED flag set in the folder it's - being moved to. - (do_delete): Don't set the DELETED flag here either...we'll only - set it at the very end of the filtering process. - (filter_driver_filter_message): Set the DELETED flag after all - processing is completed. - -2000-10-26 Jeffrey Stedfast <fejj@helixcode.com> - - * filtertypes.xml: Readded Source url stuff. - - * filter-element.c (filter_element_new_type_name): Added url stuff - back in. - - * filter-url.[c,h]: Back from the dead... - - * Makefile.am: Re-added filter-url.[c,h]. - -2000-10-25 Jeffrey Stedfast <fejj@helixcode.com> - - * filtertypes.xml: Added option menu items to allow searching - based on regular expressions. - - * filter-message-search.c (body_regex): New callback to match text - in the body using regex. - (body_contains): Modified to only match using strstr. - (header_regex): New callback to match headers using regex. - (header_contains): Modified to only match using strstr. - -2000-10-24 Jeffrey Stedfast <fejj@helixcode.com> - - * filtertypes.xml: Take out the reference to "Source". - - * filter-element.c (filter_element_new_type_name): Remove - filter-url code. - - * filter-url.[c,h]: What was I smoking? There's no good reason to - filter on source urls as there are other ways to get the same - effect. Thanks to both Zucchi and Miguel for helping me see this - :-) - -2000-10-24 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c: Fixed NULL in fprintf. - -2000-10-24 Dan Winship <danw@helixcode.com> - - * Makefile.am (libfilter-i18n.h): Build a fake header file with - the titles from the xml files, for translation purposes. - - * filter-rule.c (get_rule_part_widget): Call _() on the rule's - title. - - * filter-option.c (get_widget): Call _() on the option's title. - - * filter.glade: Turn on translatable strings. - - * libfilter-i18n.h, filter.glade.h: Translatable string files. - - * add #include <config.h> to a bunch of C files so that _() - actually does anything. Undo some UTF8 frobs since we're now - dealing in localized strings. - -2000-10-23 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-filter.c (less_parts): Set the remove button insensitive - if there is only 1 action left. - (more_parts): Set the remove button sensitive (since we now have 2 - or more actions). - (get_widget): If there is only 1 action, disable the remove - button. - - * filter-rule.c (xml_encode): If there is a defined source, don't - set it to "incoming", set it to whatever the source is! - (less_parts): Set the remove button insensitive if there is only 1 - criterion left. - (more_parts): Set the remove button sensitive (since we now have 2 - or more criterion). - (get_widget): If there is no name for the filter then set it to - "Untitled", highlight it, and grab the focus. If there is only 1 - criterion, disable the remove button. - - * filter-editor.c, vfolder-editor.c: GUI fixes here and there as - well as some consistancy fixes between them. - - * filter-driver.c (filter_driver_filter_mbox): Updated to send the - source url to filter_driver_filter_message() - (filter_driver_filter_folder): Updated to send the source url of - the folder to filter_driver_filter_message() - (filter_driver_filter_message): Now takes a source_url argument - that represents the url of the folder the message is coming from - (so that we may filter based upon that information). - -2000-10-23 Christopher James Lahey <clahey@helixcode.com> - - * filter.glade: Fixed these widgets to resize properly. - -2000-10-23 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-editor.c: Remove the "demand" source from the list. - - * filter.glade: Remove the "On Demand" option and replace it with - an "Outgoing" option. - -2000-10-23 Christopher James Lahey <clahey@helixcode.com> - - * filter-editor.c, filter-filter.c, filter-folder.c, - filter-part.c, filter-rule.c, rule-context.c, score-editor.c, - vfolder-editor.c: Fixed these widgets to resize properly. - -2000-10-20 Jeffrey Stedfast <fejj@helixcode.com> - - * Makefile.am: Added filter-url.[c,h]. - - * filter-message-search.c (get_source): New callback to get the - source url of the message being filtered. - (filter_message_search): Now takes a source argument. - - * filter-element.c (filter_element_new_type_name): Added code to - handle URL types. - - * filter-url.[c,h]: New filter object to handle URLs (ie in the - case of filtering on source url). FIXME: find a way to populate - the source combo box (including mail-config.h breaks the build in - the addressbook - how does including mail-tools.h not break the - build???) - - * filtertypes.xml: Added the source filter type and added the - move-to action. - - * filter-driver.c (do_move): New callback, a "Copy" action should - just copy the message to another location while a Move should both - copy the message to a new location and delete it from the source - location. - (do_delete): Set the deleted flag on the message info. - (filter_driver_filter_message): Now returns void as we don't care - if it was copied or not in the caller functions. Also check the - CamelMessageInfo being passed in - if the message has been marked - as deleted prior to being filtered, then return immediately as we - don't want to apply filter actions to deleted messages. - -2000-10-19 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_filter_folder): Start fetching at - 1, not 0. - -2000-10-11 Not Zed <NotZed@HelixCode.com> - - * filter-driver.c (filter_driver_filter_mbox): Report the - percentage of file complete for the filter. - -2000-10-10 Not Zed <NotZed@HelixCode.com> - - * filter-driver.c (filter_driver_run): Why on earth does this code - ref all these objects for? This is not right at all. - (filter_driver_run): Changed source type to a string. - (filter_driver_run): REmove the very weird exception copying - stuff - just ref it instead. - (do_score): - (do_colour): - (do_stop): - (do_copy): - (mark_forward): - (do_delete): Removed bogus 'terminated' testing. This is NOT - NEEDED HERE. It is tested after every rule/action, and - termination only makes sense at that point. - (filter_driver_filter_message): new funciton (renamed), filter - only a message. - (filter_driver_filter_mbox): Filter a whole mbox. - (filter_driver_run): If we aren't given an info, create a simple - one based on the message headers. - (filter_driver_filter_message): Renamed from filter_driver_run(). - (filter_driver_set_status_func): Set the status callback function. - (filter_driver_set_default_folder): Set the default folder for - filtering. - (report_status): Internal function to report the status of a given - event. - (do_copy): Removed a pointless cache lookup - duh, we do it in - open_folder anyway (infact, we do it in camel too!!). - (filter_driver_filter_message): Removed pointless re-refing of - arguments. Why would anyone think this could be any use at all? - (filter_driver_filter_folder): New function to filter a whole - folder. - - * filter-editor.c (rule_add): api fixes. - (rule_edit): - (rule_up): - (rule_down): - (set_sensitive): This didn't take into account the source, now it - does. - (select_source): Fix for api changes. Changed the rather generic - 'number' argument to be 'source', and a string. - (filter_editor_construct): Changed the 'number' to 'source', and - set the string appropriately. Added a warning for one case where - the glade file is out of sync. - - * score-editor.c (score_editor_construct): - (rule_edit): - (rule_delete): - (rule_up): - (rule_down): - (set_sensitive): api fixes. - - * vfolder-editor.c (set_sensitive): Api fixes. - (vfolder_editor_construct): - (rule_edit): - (vfolder_editor_construct): - - * rule-context.h (RCNextRuleFunc): Added a source argument. - - * rule-context.c (rule_context_next_rule): Added source argument. - (rule_context_find_rule): Added source argument. - (rule_context_get_rank_rule): Added source argument. - (rule_context_get_rank_rule_with_source): Removed. - (save): Fixed for changes to RCNextRuleFunc prototype. - - * filter-rule.h: Changed the source to be a string, removed the - filter_source_t type. - - * filter-rule.c (filter_rule_set_source): New function to set the - source of a rule. What idiot ran this code through indent? - (filter_rule_find_list): Added a source argument. - (filter_rule_next_list): Added a source argument. - (get_widget): Fixed the wording. You dont remove search parts, - you can only remove the last one. Why you even need to mention - they are search 'criteria' is beyond me. Whoever added the - scrolled window needs to be shot, its the single most awful GUI - feature ever invented (ranks with the close button next to - maximise). - (xml_encode): Save source as a string (if present). - (xml_decode): Likewise for loading & fixed a small memleak. - (filter_rule_finalise): Free source. - -2000-10-06 Not Zed <NotZed@HelixCode.com> - - * rule-context.c (load): Remove the stupid on-demand cb shit. - (rule_context_load): And here too. - -2000-09-27 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_run): Now takes an argument to - specify the log file (or NULL if logging is not to be performed). - -2000-09-19 Dan Winship <danw@helixcode.com> - - * Makefile.am (gladedir, filterdir): Use $(datadir), not - $(prefix)/share. - -2000-09-18 Jeffrey Stedfast <fejj@helixcode.com> - - * filtertypes.xml: Modified to use more intuitive naming - - * score-rule.c (xml_decode): Make sure the score is within our - range - (get_widget): Changed range to -3 to +3 - - * filter-score.c (get_widget): Changed range to -3 to +3 - (xml_decode): Make sure the score is within our range - - * filter-rule.c (get_widget): Rearranged widgets. - - * filter-filter.c (get_widget): Rearranged widgets. - - * filter-editor.c (filter_editor_construct): Updated to allow for - double-clicking on a rule to edit it. - -2000-09-18 Christopher James Lahey <clahey@helixcode.com> - - * filter-editor.c, filter-filter.c, filter-folder.c, - filter-input.c, filter-message-search.c, filter-option.c, - filter-rule.c, score-editor.c, vfolder-editor.c, vfolder-rule.c: - Fixed the #include lines to deal properly with gal. - -2000-09-13 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-message-search.c (body_contains): Modified to only match - text MIME parts in the message rather than the entire MIME message - (header_contains): Added regex matching - -2000-09-12 Dan Winship <danw@helixcode.com> - - * rule-context.c (d): - * filter-datespec.c (d): Turn off debugging output. - -2000-09-11 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c: We now use a "copied" variable to record - whether a message was marked as copied or not instead of trying to - "guess" by looking at the folders hash table as that won't work at - all anymore. - (do_copy): Renamed as this is more appropriate now that it - actually copies the message rather than marking it for copying - later. Also fixed a logic error which prevented a message from - being dumped into a folder if the fodler had been previously - opened. - -2000-09-11 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_run): No longer takes a - self_destruct argument. - -2000-09-11 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_run): Don't freeze/thaw the - default inbox here, let the caller freeze/thaw it. Don't destroy - the folders hash table here, it's faster if we wait till the - filter-driver is destroyed. - (filter_driver_finalise): Destroy the folders hash table here - (filter_driver_init): Initialize the folders hash table here - -2000-09-11 Jeffrey Stedfast <fejj@helixcode.com> - - * filtertypes.xml: Changed "Header" to be "Message header" so it's - not quite as confusing (??) - -2000-09-11 Jeffrey Stedfast <fejj@helixcode.com> - - * filtertypes.xml: Updated to allow the user to specify arbitrary - headers. - -2000-09-09 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_run): Fixed a logic error. Only - mark filtered as TRUE if it was successfully copied to another - folder, this means don't mark true if the default inbox is NULL. - -2000-09-09 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_run): Erm, okay I misunderstood - what camel_folder_[un]hook_event() did - we don't even need this - crap in the filter driver so lets take it completely out and let - the caller handle this junk. - -2000-09-09 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_run): Updated to not emit the - folder_changed signal when a message is appended to the default - mailbox - lets leave that up to the caller so we don't queue up a - bunch of these emits if the caller is downloading messages for - example. - -2000-09-08 Jeffrey Stedfast <fejj@helixcode.com> - - * filtertypes.xml: Added scoring xml stuffs - - * Makefile.am: added filter-score.[c,h] - - * filter-score.[c,h]: New functions to handle the "score" filter - type. - - * filter-element.c (filter_element_new_type_name): Added support - for "score" type. - - * filter-driver.c (do_score): New ESExp callback for filter - actions to set the score on a message. - - * filter-message-search.c (get_score): New ESExp callback for - getting the score tag as an integer value. - -2000-09-07 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_run): Now takes a - CamelMessageInfo argument in preparation for handling scoring - -2000-09-07 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_run): Modified to return a - boolean value specifying whether or not the message was filtered - into a folder other than the default. The default mailbox can now - also be specified as NULL if the message shouldn't be appended to - it in the case that it's not filtered into some other folder. - -2000-09-07 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_run): Rewrote - this shouldn't - need to be an async function - - * filter-message-search.c (match_all): Modified to look at the - boolean value being fed to it and just to return that instead of - always returning TRUE - -2000-09-07 Lauris Kaplinski <lauris@helixcode.com> - - * filter-editor.c, filter-filter.c, filter-folder.c, filter-option.c: - * filter-rule.c, score-editor.c, vfolder-editor.c, vfolder-rule.c: - More UTF-8 wrapping - -2000-09-06 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_run): Totally rewritten to filter - a single message at a time instead of filtering a folder. - - * filter-message-search.c (filter_message_search): New convenience - function for searching a message. - -2000-08-24 Lauris Kaplinski <lauris@helixcode.com> - - * filter-folder.c: Use e_utf8 wrappers - - * filter-input.c: Use e_utf8 wrappers - - * filter-rule.c: Use e_utf8 wrappers - -2000-08-23 Dan Winship <danw@helixcode.com> - - * filter-datespec.c (cal_day_selected): Set seltime.tm_isdst to - -1, not daylight, because the current dst value is not relevant to - the selected date. - -2000-08-18 Peter Williams <peterw@helixcode.com> - - * filter-driver.c (do_filter_mail): Unlink a new parameter, path_to_unlink, - if it is empty once the mail is filtered. Fixes a race in - mail_tool_filter_contents_into. - - * filter-driver.h: Update the prototype. - -2000-08-14 Ettore Perazzoli <ettore@helixcode.com> - - * vfolder-editor.c (rule_add): Add translation marks and use stock - buttons. - (rule_edit): Likewise. - - * score-editor.c (rule_add): Add translation marks and use stock - buttons. - (rule_edit): Likewise. - - * rule-context.c (rule_context_add_rule_gui): Add translation - marks and use stock buttons. - - * filter-part.c (main): Add translation marks and use - stock buttons. - - * filter-folder.c (button_clicked): Add translation marks and use - stock buttons. - - * filter-editor.c (rule_add): Add translation marks and use stock - buttons. - (rule_edit): Likewise. - - * filter-rule.c (get_widget): Add translation marks. - - * filter-filter.c (get_widget): Add translation marks. Add - padding to make it look like the buttons in `filter-rule.c'. - -2000-08-17 Peter Williams <peterw@helixcode.com> - - Implement filtering on demand. - - * rule-context.h: Add a new callback to rule_context_load - that allows the caller to hook on-demand rules into its UI. - - * rule-context.c (rule_context_load): Changed to pass the - extra parameters to load(). - (load): If the rule is successfully loaded, call the provided - callback so that the UI can be updated. - - * filter-editor.c (rule_add): Set the source of the new filter. - (rule_edit): Use the new rule_context_get_rank_rule_with_source() - so that we don't get a bad index into the GtkList. - (rule_delete): Same as above. - (rule_up): Same as above. - (rule_down): Same as above. - (select_source): New function. When the user changes the - dropdown list to select a new source type, repopulate the - list with rules of the appropriate type. - (filter_editor_construct): Code moved from here into - select_source(). Hook up all the elements of the source optionmenu - to callbacks to select_source(). - - * filter-rule.c (xml_encode): Save the rule's source type. - (xml_decode): Load it. Default to 'incoming' if unspecified. - - * filter-rule.h: New enumeration, _filter_source_t, the - specifies the rule's source. Add it to struct _FilterRule. - - * filter-driver.c (filter_driver_run): Add a new input, - sourcetype, that specifies which rules to run (only ones - with the same source will be run). struct filter_mail_input_t - changed to accomodate. - (do_filter_mail): Skip rules if they're not the specified source. - If source and dest are the same, don't delete the messages or - copy unnecessarily. - - * filter.glade: Make the optionmenu sensitive. Change "Outgoing" - to "On Demand" (outgoing should be added later). - -2000-08-15 Peter Williams <peterw@curious-george.helixcode.com> - - * vfoldertype.xml, filtertypes.xml: Add entries defining the - date-based message filtering and vfoldering. - - * filter-datespec.{c,h}: New files implementing the UI for - date-based filtering and vfoldering -- specifically, choosing - what to compare the message to. - - * filter-element,c: Hook up to create a datespec filter if - that's what's called for. - - * Makefile.am: Build the new -datespec files. - -2000-08-13 Dan Winship <danw@helixcode.com> - - * Makefile.am (EXTRA_DIST): remove blank.xpm and check.xpm which - no longer exist. Add filter.glade. - -2000-08-12 Dan Winship <danw@helixcode.com> - - * filter-driver.c (describe_filter_mail): Use - mail_tool_get_folder_name here too. (Hm... this directory really - shouldn't depend on stuff in mail/, but it already did. We'll have - to sort this out later.) - -2000-08-11 Dan Winship <danw@helixcode.com> - - * filter-driver.c (do_filter_mail): Remove an '#if 0' that must - have been left in accidentally, so that messages which are copied - to other folders will not also be copied into the Inbox. Also, - #ifdef out the line that printfs the rule, because the rules are - often very large. - -2000-08-11 Not Zed <NotZed@HelixCode.com> - - * filter-driver.c (do_colour): Use proper accessor function - instead of poking the structure. - -2000-08-10 Christopher James Lahey <clahey@helixcode.com> - - * filter-driver.c, filter-folder.c, rule-context.c, - vfolder-editor.c: Fixed some warnings. - -2000-08-10 Peter Williams <peterw@helixcode.com> - - * filter-driver.c (do_filter_mail): Fix the infinite fetchmail. - -2000-08-10 Not Zed <NotZed@HelixCode.com> - - * filter-driver.c (filter_driver_run): Save the results of - searches till we're done. So we dont have to go strduping strings - agian and again and again and again ... Remove all the unecessary - strdups. - (do_colour): Implement. - (filter_driver_run): Change for append api change. - (free_key): Removed. - -2000-08-09 Not Zed <NotZed@HelixCode.com> - - * rule-context.c (rule_context_add_rule_gui): Helper function to - add a rule, but present a gui first, asking for confirmation/allow - editing. - (rule_context_add_rule_gui): Keep track of context so it isn't freed under us. - - * filter-context.c (filter_context_create_action): Implement, - helper to aid filter generation. - -2000-08-08 Peter Williams <peterw@helixcode.com> - - * filter-driver.c (close_folder): Fix an accidental GTK unref - of a CamelObject. - -2000-08-03 Ettore Perazzoli <ettore@helixcode.com> - - * filter-folder.c (button_clicked): Use the base name of the - Evoluton URI for the button's label. - (get_widget): Likewise. - -2000-08-03 Peter Williams <peterw@helixcode.com> - - * filter-driver.c (op_filter_mail): Conform to the new mail-threads - interface. - -2000-08-01 Not Zed <NotZed@HelixCode.com> - - * vfolder-editor.c (rule_add): Oops, create a vfolder_rule when we - add a new one. - - * rule-context.c (load): If there are no user rules, dont bomb - out. - -2000-07-31 Not Zed <NotZed@HelixCode.com> - - * filter-input.c (filter_input_set_value): Set value of a simple - type to a new string. - - * filter-option.c (filter_option_set_current): New function to set - the current value of an option. - - * filter-rule.c (filter_rule_find_list): New function to find a - rule in a list, by name. - (filter_rule_set_name): Let you set the name of a rule. - - * rule-context.c (rule_context_find_rule): Find a rule by name. - (rule_context_create_part): Helper to find and clone a part by - name. - - * filter-folder.c (button_clicked): Fix warning. - - * filter.glade: Add new widgets for vfolder rule editor. - - * vfolder-context.c (vfolder_context_init): Changed to use vfolder - rule as the rule type. - - * vfolder-rule.c: New class to encode extra information required - for vfolder rules. - -2000-07-30 Not Zed <NotZed@HelixCode.com> - - ** Almost a total rewrite of every file, except for filter-driver - which just had minor updates. - - The rule format has changed. - -2000-07-24 Dan Winship <danw@helixcode.com> - - * filter-driver.c (do_delete, filter_driver_run): Update for - CamelFolder API changes. (delete_message and get_uids don't take - exceptions any more.) - -2000-07-21 Peter Williams <peterw@helixcode.com> - - * filter-driver.c (cleanup_filter_mail): Use the exception - provided to us by the async manager instead of allocating - our own; use mail_tool_camel_lock_{up,down} around camel - operations. - (filter_driver_run): Make it return void. - -2000-07-20 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c: Update to make "async". - -2000-07-11 Dan Winship <danw@helixcode.com> - - * filter-driver.c: Update for CamelFolder API changes - -2000-07-11 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c (filter_driver_run): Updated to reflect changes to - camel_folder_append_message () - -2000-07-09 Dan Winship <danw@helixcode.com> - - * filter-xml.[ch]: add a "string" type - - * filtertype.xml, vfoldertypes.xml: Use type="string" rather than - "folder" for subject/body matching. - - * filter-arg-types.c: Update some strings for "text" input. Fix - some warnings (including one that pointed out a real bug). - - * filter-arg.c, filter-druid.c, filter-format.c: fix warnings - -2000-07-07 Dan Winship <danw@helixcode.com> - - * filter-driver.c: Update for camel_folder_search_by_expression - change (GList -> GPtrArray). - - * vfoldertypes.xml: sync this to filtertypes.xml (to/cc thing) - -2000-07-05 Dan Winship <danw@helixcode.com> - - * remove some non-error case debugging messages. - - * filtertypes.xml: Fix typos and update the "to-address" rule to - match To or Cc. - * vfoldertypes.xml: Fix typos. - - * filter-driver.c (do_delete, do_copy, do_stop, - filter_driver_run): Add uids to the "processed" list only after - succesfully doing something with them. Fixes the problem where - copying a message to a folder that didn't exist would result in it - disapearing. - -2000-07-02 Ettore Perazzoli <ettore@helixcode.com> - - * filter-driver.c (filter_driver_new): Don't free the ruleset nor - the xmlDoc. This will make us leak [I think], but at least - filters work. - -2000-07-02 Dan Winship <danw@helixcode.com> - - * filter-driver.c (open_folder): freeze the folder to avoid - multiple folder_changed's - (close_folder): and thaw it. - -2000-07-02 Dan Winship <danw@helixcode.com> - - * filter-driver.c (filter_driver_new): kill - filter_driver_set_session and filter_driver_set_rules and instead - make filter_driver_new take the rules and a callback function it - can use to turn URIs into folders. - (open_folder): Use the callback function rather than calling camel - directly: some URIs need special handling to turn them into stores - and folders correctly, so let the mailer do that. - -2000-07-01 Ettore Perazzoli <ettore@helixcode.com> - - * filter-arg-types.c (arg_folder_edit_value): Only allow type - "mail" when selecting a folder for the filter. - -2000-07-01 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-driver.c: Updated to reflect changes made to - camel-folder. - -2000-06-30 Peter Williams <peterw@curious-george.helixcode.com> - - * filter-xml.c (filter_load_optionset_file): Check for failure - when loading the filter doc. - - * filter-driver.c (filter_driver_set_rules): Ditto. - - * filter-editor.c (filter_editor_set_rule_files): Ditto. - -2000-06-29 Ettore Perazzoli <ettore@helixcode.com> - - * filter-arg-types.c: Replaced `global_shell_interface' with - `global_shell_client'. - (arg_folder_edit_value): Use - `evolution_shell_client_user_select_folder()'. - (create_listener): Removed. - (impl_FolderSelectionListener_selected): Removed, together with - all the ::Listener stuff. - -2000-06-29 Arik Devens <arik@helixcode.com> - - * vfoldertypes.xml (ruleset type="match"): Changed Cc to CC to be - the same as the other CC rule. None of this works however, cause - the CC code is not hooked up to camel... oh well ;-( - -2000-06-29 Arik Devens <arik@helixcode.com> - - * vfoldertypes.xml (ruleset type="match"): Added a Cc rule to - vfolders. Works like To except on the Cc of a message ;-) - -2000-06-28 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-arg-types.c (arg_string_edit_value): Changed "Filter name" - to "Option value" as "Filter name" made no sense in the dialog - (arg_address_edit_value): Same - (arg_folder_edit_value): What do we want to return?? - -2000-06-27 Ettore Perazzoli <ettore@helixcode.com> - - * filter-xml.c (load_desc): Strdup content before assigning the - value. Also, no need to check for NULL when g_strdup()ing as - g_strdup() returns NULL for a NULL arg. - -2000-06-27 Ettore Perazzoli <ettore@helixcode.com> - - * Makefile.am (INCLUDES): `-I$(top_builddir)/shell' so that it - works with builddir != srcdir. [We need to #include - "Evolution.h".] - -2000-06-27 Michael Zucchi <zucchi@zedzone.mmc.com.au> - - * Makefile.am (INCLUDES): Add the shell dir for includes (for - corba interfaces). - - * filter-arg-types.c (impl_FolderSelectionListener_selected): - Listener for folder query. Sigh. - (create_listener): Create the listener object for the folder - dialogue query. Uses a global for linkage to the shell object, - via the mail component. - (arg_folder_edit_value): Call the folder selection dialogue to - edit the value, rather than a simple text widget. - -2000-06-26 Jeffrey Stedfast <fejj@helixcode.com> - - * filter-editor.c: Added a #include <gnome-xml/parser.h> as this - was needed (since we used the xml parser...) - (druid_dialogue_clicked): Do we want to use struct filter_option - or do we instead want to use struct filter_optionrule as we had before? - Since the function we pass the data to expects filter_option, I suspect - that that is what we want. - - * filter-format.h (filter_description_html_write): Renamed from - description_html_write in order to match function name in - filter-format.c - - * filter-druid.c (option_name_changed): Fixed a memory leak (Free'd - a filter description list). - - * filter-arg-types.c (arg_folder_edit_values): Free'd GList data in - argin->values. - - * filter-driver.c (filter_driver_set_rules): Added code to free an - xmlDoc and some other data. - - * filter-arg.h: Add prototypes for filter_arg_write_html() and - filter_arg_write_text(); - - * filter-arg-types.c: Lets see if we can't get rid of some of these - warnings... (use some casts to make warnings go away) - (arg_address_edit_value): Lets make sure that ad exists before looking - at member data. - -2000-06-16 Dan Winship <danw@helixcode.com> - - * filter-driver.c (do_delete, filter_driver_run): Update for Camel - flag handling changes. - -2000-06-15 Dan Winship <danw@helixcode.com> - - * filter-driver.c (open_folder, close_folder): Update for - CamelFolder changes. - -2000-06-09 Jacob Berkman <jacob@helixcode.com> - - * filter-editor.c (add_or_edit): use stock pixmap buttons - - * filter-druid.c (build_druid): remove the border on the notebook, - put the html widget in a scroll frame, and add some padding - -2000-06-06 Dan Winship <danw@helixcode.com> - - * filter-driver.c (open_folder): Update for folder - existence/creation changes. - -2000-06-02 Christopher James Lahey <clahey@helixcode.com> - - * filter-driver.c: Free the exception and the priv struct. - -2000-06-01 Christopher James Lahey <clahey@helixcode.com> - - * filter-arg-types.c (arg_address_edit_value): Search for ad in - arg->values instead of text since it's a list of - filter_arg_adresses. Also, free the old value in the list. - -2000-05-30 Not Zed <NotZed@HelixCode.com> - - * filtertypes.xml: And here too. - - * vfoldertypes.xml: Add body-contains and not-body-contains - types. - -2000-05-27 Not Zed <NotZed@HelixCode.com> - - * vfoldertypes.xml: New file - lists rules appropriate for - vfolders (no actions, etc). - - * Makefile.am (EXTRA_DIST): Add vfoldertypes.xml - - * filter-driver.c (filter_driver_expand_option): Made public from - expand_filter_option. - (filter_driver_rule_count): find out how many user rules are - defined. - (filter_driver_rule_get): Get a user rule by index. - -2000-05-21 Ettore Perazzoli <ettore@helixcode.com> - - * filter-druid.c: Don't pass an empty URL to `gtk_html_begin()' - anymore. - - * filter-arg-types.c: Updated for the new GtkHTML API which uses - `GtkHTMLStream *' instead of `GtkHTMLStreamHandle'. - * filter-arg.c: Likewise. - * filter-arg.h: Likewise. - * filter-druid.c: Likewise. - - * filter-format.c: Likewise. - * filter-format.h: Likewise. - -2000-05-18 Dan Winship <danw@helixcode.com> - - * filter-driver.c (filter_driver_run): update for - camel_folder_get_uids change - -2000-05-17 NotZed <NotZed@HelixCode.com> - - * filter-druid.c: Fix some html formatting. - -2000-05-16 NotZed <NotZed@HelixCode.com> - - * filter-driver.c (filter_driver_run): Delete all processed - messages. This is probably going to slow it down a bit. - (filter_driver_run): Close folders before destroying them *sigh*. - (open_folder): Actually open the folder. Doh. - - * filtertypes.xml: Initial filter rules. - - * filter-xml.c (filter_write_optionset): Save the description - also. - (write_description): Routine to save description - only saves 1 - node of description. - - * filter-arg.c (filter_arg_edit_clicked): Dont free edata here, - let the destroy do it(?) - - * filter-editor.c (main): Simple driver program for testing, so i - can fix all this really broken code *sigh* - -2000-05-15 NotZed <NotZed@HelixCode.com> - - * filter-editor.c (filter_editor_set_rule_files): filename based - interface. - (filter_editor_save_rules): Interface to save the options to a - filename. - - * filter-xml.[ch]: Bunch of cleanup. - - * filter-xml.c (filter_*_file): New interfaces to read/write files - directly, rather than messing with xmldoc crap. - - * Makefile.am: Removed filter-driver test program, now just part - of libfilter. - - * filter-driver.c: Made an object, with an api and everything, can - apply a filter to a given mailbox. - -2000-05-10 Christopher James Lahey <clahey@helixcode.com> - - * filter-arg.h: Changed tree.h to gnome-xml/tree.h. - - * Makefile.am: Added filter-arg-types.h, filter-arg.h, - filter-xml.h, filter-format.h, filter-druid.h, filter-editor.h. - -2000-05-02 Matt Loper <matt@helixcode.com> - - * Makefile.am: set G_LOG_DOMAIN. - -2000-05-01 NotZed <NotZed@HelixCode.com> - - * filter-driver.c (main): Fix for api. - -2000-04-30 Dan Winship <danw@helixcode.com> - - * filter-driver.c (start): Remove no-longer-necessary call to - camel_provider_register_as_module. - -2000-04-25 Ettore Perazzoli <ettore@helixcode.com> - - * Makefile.am (INCLUDES): Use `$(GTKHTML_CFLAGS)'. - -2000-04-20 NotZed <NotZed@HelixCode.com> - - * filter-driver.c: Removed a bunch of crappy unrequired headers. - - * Makefile.am (filter_driver_LDADD): Added libibex back again. - -2000-04-18 Dan Winship <danw@helixcode.com> - - * filter-driver.c: remove unused camel-log.h include - -2000-04-12 Matt Loper <matt@helixcode.com> - - * filter-arg.c (filter_arg_edit_value): Return a value. - -2000-03-27 NotZed <NotZed@HelixCode.com> - - * filter-xml.c (tokenise_xmlfreeprop): Free a prop after - tokenising it. - (find_node_attr): Free the prop after using it. - (load_desc): Ditto. I use free() because xmlFree() is nowhere to - be found. - (filter_load_optionset): Ditto. - - * filter-arg-types.c (arg_address_values_add_xml): free() xml - stuff, plugs a leak. - (arg_folder_values_add_xml): Ditto. - -2000-03-22 NotZed <NotZed@HelixCode.com> - - * filter-driver.c (main): Changed to use async search api. - -2000-03-04 NotZed <NotZed@HelixCode.com> - - * filter-druid.c (html_write_options): Output 'and' bits between - the rules. - - * filter-driver.c (main): Actually implement filtering, at least, - from Inbox. Copy messages to folder (in the same store only, so - far), delete, and stop processing are implemented, and the logic - to handle default processing. - - * filter-xml.c (load_optionvalue): Fix up a bug where we lost the - name of the arg (ouch). - * filter-xml.c: Wrapped printf's in debug macros. - -2000-03-02 NotZed <NotZed@HelixCode.com> - - * filter-druid.c (object_destroy): Disconnect the list signal, so - we dont get spurious emits during destroy. - (arg_changed): Callback to update filter arg asynchronously. - (arg_link_clicked): Edit the value non-modally. - - * filter-arg.c (filter_arg_edit_values_1): Changed to use - non-modal interface. - -2000-03-01 Ettore Perazzoli <ettore@helixcode.com> - - * Makefile.am: New file. - - * Makefile: Removed. I wonder why we are using plain Makefiles - instead of automake Makefiles at all. - -2000-02-29 NotZed <NotZed@HelixCode.com> - - * filter-driver.c (main): Remove gui code, this will be actual - filtering code. - - * Makefile: Added filter-editor to the library. - - * filter-editor.c (main): Comment out, make it a proper library. - -2000-02-28 NotZed <NotZed@HelixCode.com> - - * filter-druid.c: Removed unused header. - - * Makefile: Removed references to filter-sexp.[ch]. - - * filter-sexp.[ch]: Removed some unecessary includes. Moved to - e-util. Renamed callers. - -2000-02-24 NotZed <NotZed@HelixCode.com> - - * filter-xml.c (filter_description_free): - (filter_load_ruleset_free): - (filter_load_optionset_free): Functions for memory management. - - * filter-arg.c (filter_arg_copy): Copy the values of one arg into - another. - - * filter-editor.c: New widget, a dialogue which uses filter-druid - to present the various editing views. - (druid_dialogue_clicked): On finish, save the user's new filter - definition where it came from. - - * filter-druid.c: Changed to just being a notebook with no tabs, - rather than a full druid (no next/prev/etc buttons). - (option_name_changed): Update the option's description as the user - enters it in. - -2000-02-22 NotZed <NotZed@HelixCode.com> - - * filter-xml.c (filter_clone_optionrule): - (filter_clone_optionrule_free): - (filter_optionrule_new_from_rule): New utility functions for - working with the internal rule format. - - * filter-arg.[ch]: Added new callbacks for editing a single value, - and a new editor which shows all items in a list, and allows you - to edit them via the single-edit method. This needs some cleanup - for some unused/unusable virtual methods (edit_values, - write_html?). - - * Makefile: Add the druid for build. - - * filter-druid.c: A 'druid' widget for editing a single filter - rule. - -2000-02-21 Matt Loper <matt@helixcode.com> - - * .cvsignore: New file. - -2000-02-18 NotZed <NotZed@HelixCode.com> - - * blank/check.xpm: Added forgotten files. - - * Uh, more changes, lots, its still work in progress. - -2000-02-14 NotZed <notzed@helixcode.com> - - * Initial import. - diff --git a/filter/ChangeLog.pre-1-4 b/filter/ChangeLog.pre-1-4 new file mode 100644 index 0000000000..ece5ee7998 --- /dev/null +++ b/filter/ChangeLog.pre-1-4 @@ -0,0 +1,2967 @@ +2003-05-05 Jeffrey Stedfast <fejj@ximian.com> + + * filter-colour.c (format_sexp): Format the colour string in a way + that gdk_color_parse() will handle. Apparently it no longer + handles rgb:<red>/<green>/<blue>? Fixes bug #42345. + +2003-04-24 Jeffrey Stedfast <fejj@ximian.com> + + Fix for bug #41578. + + * rule-editor.c (rule_move): Pass re->source instead of + re->current->source to rule_context_get_rank_rule(). Also updated + to pass re->source to rule_context_rank_rule(). + (rule_editor_play_undo): Updated to pass re->source to + rule_context_rank_rule(). + + * rule-context.c (rule_context_rank_rule): Now takes a 'source' + argument rather than using rule->source (vfolder editor lists + rules of all sources, not just same-source rules). + (revert): Pass frule->source/part->source to + rule_context_rank_rule() - might not be right but should preserve + the prior behaviour at least. + +2003-04-18 Not Zed <NotZed@Ximian.com> + + * rule-editor.c (d): removed debug spew. + + * addresses #41398 + + * vfolder-rule.c (format_source): helper function to decode a url + into a more user-friendly format. + (source_add, get_widget): add the formatted data as another + column to the table. + (vfolder_editor_sourcelist_new): add another column to the table, + a formatted uri as well as the raw one. + (d): turned off debug vomit while i'm here. + +2003-04-11 Jeffrey Stedfast <fejj@ximian.com> + + Fixes for bugs: #41149, #41150, #41151, #41152, #41153, #41155, + #41156, #41205, and #41208. + + * filter-filter.c (get_widget): Same as with filter-rule. + + * filter-rule.c (get_widget): Changed border widths of frame + vboxes and other padding to comply with the HIG. + + * rule-editor.c (rule_add): Change window border and padding + around the 'rules' widget to comply with the HIG. + (rule_edit): Same. + (rule_editor_construct): Same here as well. + + * filter.glade: Many HIG compliance fixes. + +2003-03-28 Not Zed <NotZed@Ximian.com> + + * filter-datespec.c (button_clicked): cast warning. + +2003-03-26 Jeffrey Stedfast <fejj@ximian.com> + + * filter-file.c (xml_decode): Loop over child nodes here too in + order to not be affected by libxml2 crack. + + * filter-source.c (xml_decode): Fixed to disreguard libxml2 crack. + (get_widget): Use strcmp instead of e_url_equal(). + +2003-03-20 Dan Winship <danw@ximian.com> + + * filter-datespec.c (timespans, set_button): Change the strings in + the timespans array from "second" / "seconds" to "1 second ago" / + "%d seconds ago", etc, and update the code in set_button that uses + them. Fixes #36245, translation clash between the "second" here + and the one in the calendar (where it's used as "2nd"). + (button_clicked): Fix this so we don't get stuck inside + gtk_dialog_run's main loop forever. + +2003-03-20 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c (rule_editor_set_sensitive): Don't return here - + this is a void function. + (rule_editor_set_source): Same. + +2003-03-18 Not Zed <NotZed@Ximian.com> + + * rule-context.c (new_rule_response): use the same code as in + filter-rule to enforce unique names for all rules/vfolders. + +2003-03-17 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c (rule_editor_construct): Set the default window + size to something reasonable (350x400?). Fixes bug #39808. + + * vfolder-rule.c (source_remove): Fixed to work properly. Fixes + bug #39654. + + * rule-editor.c (rule_editor_construct): Always add a Cancel + button here, but if !enable_undo - make the response id + GTK_RESPONSE_CANCEL rather than GTK_RESPONSE_REJECT (which does + undo). This mimics the behaviour that was done in the mail/ code + previously. Fixes bug #39809. + +2003-03-11 Not Zed <NotZed@Ximian.com> + + * rule-context.c (revert): go to the proper level of child node + before looking for rule sets, fix for #39165 to make 'cancel' work. + +2003-03-06 Jeffrey Stedfast <fejj@ximian.com> + + Fixes for bug #39170 + + * filter-element.c (filter_element_xml_create): Remove return + keyword. + (filter_element_build_code): Same. + (filter_element_format_sexp): Here too. + +2003-02-20 Not Zed <NotZed@Ximian.com> + + * filter-source.c (filter_source_get_sources): Change to use + EAccountList, etc. + +2003-02-12 Jeffrey Stedfast <fejj@ximian.com> + + * vfolder-rule.c (source_add): Get rid of the need for the + GTK_WIDGET_DESTROYED() check. + +2003-02-07 Jeffrey Stedfast <fejj@ximian.com> + + * filter-editor.c (filter_editor_new): Use g_object_new() + instead of gtk_type_new(). + + * vfolder-editor.c (vfolder_editor_new): Use g_object_new() + instead of gtk_type_new(). + + * score-editor.c (score_editor_new): Use g_object_new() instead of + gtk_type_new(). + + * rule-editor.c (rule_editor_new): Use g_object_new() instead of + gtk_type_new(). + (rule_add): Use gtk_window_set_resizable() instead of the + deprecated gtk_window_set_policy(). + (rule_edit): Same here. + (rule_editor_construct): Here too. + + * rule-context.c (rule_context_add_rule_gui): Use + gtk_window_set_resizable() instead of the deprecated + gtk_window_set_policy(). + +2003-02-05 Dan Winship <danw@ximian.com> + + * Makefile.am (gladedir): Defined in configure.in now + (filterdir): Define using privdatadir + +2003-01-22 Ettore Perazzoli <ettore@ximian.com> + + * Makefile.am (gladedir): Version using $(BASE_VERSION). + (filterdir): Likewise. + +2003-01-15 Not Zed <NotZed@Ximian.com> + + * vfolder-rule.c (get_widget): dont re-use 'widget', its the + return value! + +2003-01-15 Jeffrey Stedfast <fejj@ximian.com> + + * rule-context.c (save): Back to using e_xml_save_file(). + +2003-01-14 Ettore Perazzoli <ettore@ximian.com> + + * rule-editor.c (rule_add): Change dialog from OK/Cancel to + Cancel/OK to match HIG. + (rule_edit): Likewise. + (rule_editor_construct): Likewise. + + * rule-context.c (rule_context_add_rule_gui): Change dialog from + OK/Cancel to Cancel/OK to match HIG. + + * filter-datespec.c (button_clicked): Change dialog from OK/Cancel + to Cancel/OK to match HIG. + +2003-01-03 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c (add_editor_response): Scroll to the newly added + row. Fixes bug #3725. + (rule_delete): Scroll to the selected row. + (rule_move): After moving the row, re-select it and then scroll to + make sure that it is still visible. Fixes bug #7800. + +2003-01-02 Jeffrey Stedfast <fejj@ximian.com> + + Fixed to build with -DG_DISABLE_DEPRECATED and + -DGTK_DISABLE_DEPRECATED + +2002-12-12 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c (cursor_changed): Use an easier method for getting + the iter. + +2002-12-12 Jeffrey Stedfast <fejj@ximian.com> + + * vfolder-rule.c (vfolder_editor_sourcelist_new): New custom + function for creating the source_list widget. + (get_widget): Removed the source_list creation code. + + * rule-editor.c (rule_editor_construct): Listen to row-activated + for double-click events. Also, removed the model creation code out + of here. + (rule_editor_treeview_new): Moved the treeview and model creation + code into here instead, and made the glade widgets into custom + widgets. + +2002-11-26 Not Zed <NotZed@Ximian.com> + + * vfolder-rule.c (get_widget): Add a textcellrenderer to display + the folders. + (get_widget): Remove FIXME which was wrong. + + * filter-rule.c (filter_rule_validate): FILTER_RULE_CLASS -> + _GET_CLASS + + * rule-context.c (rule_context_save): RULE_CONTEXT_CLASS -> + RULE_CONTEXT_GET_CLASS + (rule_context_revert): " + + * *.[ch]: Ran fix.sh over all files. + + * rule-editor.c (rule_add): widget:set_parent -> + window:set_transient_for + (editor_response): renamed from editor_clicked, handle gtk dialog + response codes. + (rule_edit): connect to response rather than clicked. + (rule_editor_construct): Setup a text column in the tree view. + Not sure if this can be handled via glade. + +2002-11-20 Jeffrey Stedfast <fejj@ximian.com> + + * filter-label.c (xml_create): gconfify. + +2002-11-18 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c: Updated to use GtkTreeView. + + * vfolder-rule.c: Same. + +2002-11-13 Not Zed <NotZed@Ximian.com> + + * rule-context.c (load): Get the root node properly. + + * rule-editor.c (rule_add): cast g_object_weak_ref + (rule_edit): " + + * all: xml2 node change - childs->children. Also, ignore 'text' + nodes while scanning tree. + + * rule-context.h: gnome-xml->libxml. + + * filter-element.h: gnome-xml->libxml + + * vfolder-rule.c (source_add): comment out gtk_destroyed check. + + * filter-label.c: Added back some of the guts. Might not work but + some of the code uses it :-/. Gives u a fixed set of non-editable + labels. + +2002-11-08 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c (rule_edit): Use weak_ref instead of connecting to + "destroy". + (rule_add): Same. + +2002-11-07 Jeffrey Stedfast <fejj@ximian.com> + + * vfolder-rule.c (validate): Use a GtkDialog instead of a + GnomeDialog for reporting errors. + + * rule-editor.c (rule_add): Use a GtkDialog instead of + GnomeDialog. + (rule_edit): Same. + (add_editor_response): Use a GtkMessageDialog for the error + reporting instead of a GnomeDialog. + (edit_editor_response): Same. + + * rule-context.c (rule_context_add_rule_gui): Use a GtkDialog + instead of a GnomeDialog. + + * filter-rule.c (validate): Use GtkDialog instead of GnomeDialog + here. + + * filter-input.c (validate): Use GtkDialog instead of GnomeDialog + here. + + * filter-folder.c (validate): Use GtkDialog instead of GnomeDialog + here. + + * filter-file.c (validate): Use GtkDialog instead of GnomeDialog + here. + + * rule-editor.c: Subclass GtkDialog instead of GnomeDialog. + + * filter-datespec.c (validate): Use GtkDialog instead of + GnomeDialog. + (button_clicked): Same. + +2002-11-06 Jeffrey Stedfast <fejj@ximian.com> + + * filter-label.c (xml_create): Deleted most of the internals until + we devise a gconf schema and redesign how we want to do this. It + didn't work correctly for 1.2 anyway. + + * filter.glade: Converted to the glade-2 format. + +2002-11-05 Jeffrey Stedfast <fejj@ximian.com> + + * filter-filter.c: Ported. + + * filter-source.c (get_widget): Don't use e_utf8_to_gtk_string. + + * filter-option.c (xml_create): Don't use e_utf8_xml1_decode. + + * filter-input.c (xml_encode): Don't use e_utf8_xml1_encode. + (xml_decode): Don't use e_utf8_xml1_decode. + (entry_changed): Don't use e_utf8_gtk_entry_get_text. + (get_widget): Don't use e_utf8_gtk_entry_set_text. + + * filter-file.c (xml_encode): Don't use e_utf8_xml1_encode shit. + (xml_decode): Don't use e_utf8_xml1_decode. + (entry_changed): Don't use e_utf8_gtk_entry_get_text. + (get_widget): Don't use e_utf8_gtk_entry_set_text. + +2002-11-05 Jeffrey Stedfast <fejj@ximian.com> + + * vfolder-rule.c: Ported. + + * vfolder-editor.c: Ported. + + * vfolder-context.c: Ported. + +2002-11-05 Jeffrey Stedfast <fejj@ximian.com> + + * filter-rule.c: Ported. + + * score-rule.c: Ported. + + * score-editor.c: Ported. Again, thise code seems to be unused. + + * score-context.c: Ported. Although it seems this code isn't + really used anywhere? + +2002-11-04 Jeffrey Stedfast <fejj@ximian.com> + + * filter-part.c: Ported. + + * filter-editor.c: Also ported. + + * rule-editor.c: Ported to gtk2 and removed unnecessary e_utf8 snot. + +2002-11-02 Jeffrey Stedfast <fejj@ximian.com> + + * filter-context.c: Ported this too. + + * rule-context.c: Ported to glib2/GObject. + +2002-11-01 Jeffrey Stedfast <fejj@ximian.com> + + * filter-element.c: Ported to GObject. + + * filter-input.c: Same. + + * filter-code.c: This too. + + * filter-colour.c: And this. + + * filter-datespec.c: You guessed it. + + * filter-file.c: And again... + + * filter-folder.c: Wheee! This is fun... + + * filter-int.c: Gee, I wonder... + + * filter-label.c: Also ported. + + * filter-option.c: Yep, this too. + + * filter-source.c: And finally this one. + +2002-10-30 Dan Winship <danw@ximian.com> + + * rule-editor.c (rule_add): Adjust default rule editor size to + accomodate the menu widening caused by "Pipe Message to Shell + Command". + +2002-10-10 Jeffrey Stedfast <fejj@ximian.com> + + * filtertypes.xml: Removed the Run Once filter action. + +2002-09-30 Aaron Weber <aaron@ximian.com> + + * filter-folder.c (validate): adjust string on 149 to "You must + specify a folder. + + * filter-datespec.c (get_best_span): adjust string on 174 from + "You have forgotten to choose a date" to "You must choose a date." + +2002-09-25 Dan Winship <danw@ximian.com> + + * filter-folder.c (get_widget): Use "mail/*" as the allowed folder + type. + + * vfolder-rule.c (source_add): Likewise + +2002-09-22 Dan Winship <danw@ximian.com> + + * filter-context.c (filter_delete_uri): add empty statement after + label to make it ANSI. + +2002-09-19 Not Zed <NotZed@Ximian.com> + + * filtertypes.xml: Changed source account, use header-source + rather than (= (get-source) ...) + +2002-09-13 Jeffrey Stedfast <fejj@ximian.com> + + * filtertypes.xml: Add a Run Once action to run a command only + once rather than for each message that has that action applied. + +2002-08-08 Not Zed <NotZed@Ximian.com> + + * rule-editor.c (add_editor_clicked): Dont allow duplicate names. + (edit_editor_clicked): Same here. For #24803. + +2002-08-06 Jeffrey Stedfast <fejj@ximian.com> + + * rule-context.c (save): Don't need to save temp/backup files + anymore, e_xml_save_file() now handles this for us (well, at least + the saving of temp files). I'm not sure we need a backup file + anymore now that we can depend on e_xml_save_file() to "Just Work" + +2002-08-06 Jeffrey Stedfast <fejj@ximian.com> + + * rule-context.c (save): Use e_xml_save_file(). + (xml_doc_save): Removed this code and added it to gal so that + e-table and all other parts of evolution and so forth could use + it. + +2002-08-05 Jeffrey Stedfast <fejj@ximian.com> + + * rule-context.c (xml_doc_save): New internal function to replace + xmlSaveFile. Does proper error checking and so forth to ensure + that the resulting file does not ever get truncated. + (save): Cal xml_doc_save rather than xmlSaveFile. Fixes bug + #25980. + +2002-08-02 Not Zed <NotZed@Ximian.com> + + * filter.glade: Added a datespec editor window. + + * filter-datespec.c (button_clicked): Rewritten to use glade. + Simplified all the code around it as a result, etc, and fixed bug + #21798. + +2002-08-01 Peter Williams <peterw@ximian.com> + + * filter-datespec.c (activate_specified): If the value was unset, + initialize it to now. + +2002-07-31 Ettore Perazzoli <ettore@ximian.com> + + * filter-option.c (xml_create): Remove unused variable. + +2002-07-30 Peter Williams <peterw@ximian.com> + + * filter-rule.c (get_widget): Translate the rule name when filling + in the name entry. + +2002-07-29 Jeffrey Stedfast <fejj@ximian.com> + + * filtertypes.xml: Add xml to unset system flags. + +2002-07-26 Jeffrey Stedfast <fejj@ximian.com> + + * filter-int.c (xml_decode): Use fs->type in xmlGetProp since we + already free'd 'type'. Fixes bug #28113. + + * filter-element.c: Removed the empty private struct. + + * filter-int.c: Removed the empty private struct. + +2002-07-25 Jeffrey Stedfast <fejj@ximian.com> + + * filter-int.[c,h]: Use GtkType (I only changed this one because I + turned on debugging for a bit). + + * filter-file.c (validate): Fix the strcmp logic a bit, I had it + the exact opposite of what I really wanted. Oops :-) + +2002-07-25 Jeffrey Stedfast <fejj@ximian.com> + + * filter-file.c (validate): Do some minimalistic validation of + command-lines (ie, make sure it isn't an empty string). + + * filtertypes.xml: s/shell-exec/shell/ (for the action) and pass + "/bin/sh" "-c" as the first 2 arguments. For the shell-exec + *rule*, change the name to "pipe-message" and add the "/bin/sh" + "-c" arguments too. + +2002-07-17 Jeffrey Stedfast <fejj@ximian.com> + + * filter-label.c (xml_create): Use the U_() macro to get the UTF-8 + translation. + +2002-07-15 Not Zed <NotZed@Ximian.com> + + * filter-score.[ch]: cvs remove. + + * filter-element.c: Remove reference to filter-score.h + + * vfoldertypes.xml: Fix label vfolder rule as below, also add + score and size rules from filtertypes.xml. + + * filtertypes.xml (score): Use (cast-int (user-tag "score")) to + get the value directly, rather than (get-score). + (label): Use (user-tag "label") to get the value directly, rather + than (get-label). The label is now a string too. + + * filter-label.c (filter_label_get_type): Make filter-label + inherit from filter-option. Which makes more sense doesn't it + ... surely. + (validate): Removed, optionlists are self-validating. + (xml_create): Initialise the list of options from our + configuration database. If it isn't working, ignore it and set it + up anyway. + (filter_label_init): Override the xml type. + (filter_label_count): + (filter_label_label): + (filter_label_index): Some helper functions for external + interfaces. All of the mail config/etc should use this. + + * filter-option.c (free_option): + (xml_create): + (clone): Made the "value" type in glib memory rather than xml + memory space. + (filter_option_add): Utility function to add a new option to the + list. + (clone): Use above function to simplify code. + (xml_create): Same here. + (xml_encode): Allow subclasses to override the type. + +2002-07-10 Not Zed <NotZed@Ximian.com> + + ** fixes for #10781 + + * filter-int.c (xml_encode): + (xml_decode): Handle encoding/decoding with a type name, in a + manner compatible with the score/label elemtns. + (filter_int_new_type): New constructor to create a generic 'int' + type. + + * filter-score.c: Removed. Now relies on using a filter-int with + appropriate settings. + + * filter-label.[ch]: Now inherits from filter-int. + + * rule-context.c (rule_context_revert): New method to revert a + filter context back to a user-file's definition. + (revert): implementation. + + * filter-rule.h: Added new virtual method _eq and wrapper, and + fixed all subclasses to implement it. + + * filter-element.h: Added new virtual method _eq and wrapper. + Fixed all subclasses to implement it. + +2002-07-08 Jeffrey Stedfast <fejj@ximian.com> + + * filtertypes.xml: Make the sound type for (play-sound ) a "file" + type rather than "string" since users will want to use a filesel + to select it most likely. Fixes bug #26921. + + * filter-file.c (validate): If the type is "file" check that it is + a valid file, otheriwse if it is a command-line just ignore it for + now. + + * filter-element.c (filter_element_new_type_name): A filter type + of "file" should also use the filter-file object. + +2002-05-24 Ettore Perazzoli <ettore@ximian.com> + + * filter-rule.c (get_widget): Fix English grammar. + +2002-05-16 Jeffrey Stedfast <fejj@ximian.com> + + * vfoldertypes.xml: Added a label definition. + + * filtertypes.xml: Added a label definition. + + * filter-label.c: New filter widget for labels. + + * filter-element.c (filter_element_new_type_name): Add support for + the new label widget. + + * filter-int.c (format_sexp): Fixed a memory leak. + +2002-05-09 Jeffrey Stedfast <fejj@ximian.com> + + * filter-file.c (get_widget): Set the path in the entry widget. + + * Makefile.am: Add filter-file.[c,h] to the build. + + * filtertypes.xml: Add a "Command" filter rule. + + * filter-element.c (filter_element_new_type_name): Add support for + type "command" which uses the new FilterFile widget. + + * filter-file.[c,h]: New filter widgets for choosing files and/or + command-line's (?). Not yet hooked up or anything, just for future + use. + +2002-05-08 Not Zed <NotZed@Ximian.com> + + * rule-context.c (rule_context_delete_uri): Changed to return a + GList *, a list of the names of the rules affected by the delete, + fixed all implementors. + (rule_context_rename_uri): Similarly for delete_uri, for + api consistency. + (rule_context_free_uri_list): Util function to free the return + from above. + + * filter-context.c (filter_delete_uri): Actually implement it, fix + for #18826, and some related bugs. + +2002-04-26 Jeffrey Stedfast <fejj@ximian.com> + + * Makefile.am: Get rid of ibex stuff, we no longer use it. + +2002-04-18 Jeffrey Stedfast <fejj@ximian.com> + + * filtertypes.xml: The score "is" rule should have a value of "is" + and not "less-than". + +2002-04-12 Jeffrey Stedfast <fejj@ximian.com> + + * filter-rule.c (get_widget): Fixed a grammer mistake, or so + according to bug #23376. Whatever. + +2002-04-11 Russell Steinthal <rms39@columbia.edu> + + * filtertypes.xml: Fix "Follow Up" searches by generating a + boolean, rather than a string result (Fixes #23334) + + * vfoldertypes.xml: Ditto + +2002-04-09 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c (double_click): This needs to return a gboolean + (TRUE). + (rule_edit): Using gnome_dialog_set_parent instead of + gtk_widget_set_parent_window seems to fix bug #23226. + +2002-04-10 Not Zed <NotZed@Ximian.com> + + * filter-input.c (validate): Check that there is a value to + setup. Fixes #15470. + + * filtertypes.xml: Added closing ) for "not starts with" subject + rule. + Added closing ) for all the other broken rules too ... + +2002-04-04 Dan Winship <danw@ximian.com> + + * filter-folder.c: Remove the #ifndef SHELL part. Use an + EvolutionFolderSelectorButton. Remove FilterFolder->name since + it's no longer needed. + + * filter-context.c (filter_rename_uri): Update for removal of + FilterFolder->name. + + * filter-element.c (filter_element_copy_value): Likewise. + + * vfolder-rule.c (source_add): Update for + evolution_shell_client_user_select_folder API change. + +2002-04-01 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c (rule_edit): Set 're' as the parent window rather + than as the parent widget. + (add_editor_clicked): Only unref the editor if it is non-NULL. + +2002-03-18 Jeffrey Stedfast <fejj@ximian.com> + + * filter-source.c (filter_source_get_sources): Free account_name + so we don't leak. Also after getting the source uri, use camel-url + to hide unwanted stuff. + (xml_decode): Use xmlFree on the buffer returned from + xmlNodeGetContent rather than g_free, as I think they are + incompatable. Also use camel-url here to hide any params in the + decoded url (to make things compatable with what older versions + may have saved). + +2002-03-06 Jeffrey Stedfast <fejj@ximian.com> + + * filtertypes.xml: Added beep and play-sound actions. + +2002-02-26 Not Zed <NotZed@Ximian.com> + + * filter-filter.c (option_activate): Copy values across to new + part. + + * filter-rule.c (option_activate): copy values across to new part, + if they are compatible. + + * filter-element.c (filter_element_copy_value): New function to + copy values (where they can be) from one filter element to another. + + * filter-part.c (filter_part_copy_values): New function to copy + values of a filter part. #1359. + +2002-02-12 Jeffrey Stedfast <fejj@ximian.com> + + * vfoldertypes.xml: + * filtertypes.xml: Re-added contains and + not-contains. Also added filter/vfolder rules for + Flag-for-Followup. + +2002-02-04 Jeffrey Stedfast <fejj@ximian.com> + + * vfoldertypes.xml: Same here. + + * filtertypes.xml: For mlist matching, we only want "is" and "is + not" because that is all we really support anyway. + +2002-01-27 Ettore Perazzoli <ettore@ximian.com> + + * Makefile.am: Use LIBFILTER_CFLAGS. + +2002-01-26 Mikael Hallendal <micke@codefactory.se> + + * rule-editor.c (add_editor_clicked): check if re->edit != NULL + before trying to unref it. Fixes a segfault when closing the + rule editor. + +2002-01-15 Not Zed <NotZed@Ximian.com> + + * filter-input.c (xml_decode): If we write "" to an xml file, we + read back NULL. So if we read back NULL, convert it to "". + Sigh. This makes a fix for #7801, although new gui may also be + required. + +2002-01-03 Jeffrey Stedfast <fejj@ximian.com> + + * filter-source.c (filter_source_get_sources): Get the account + name because that is the string we'd like to use for display. + (get_widget): Generate the account label the same as we do for the + composer's From optionmenu. + (filter_source_finalize): Free the account_name. + (clone): Pass along the account_name member to filter_add_source + +2002-01-02 Jeffrey Stedfast <fejj@ximian.com> + + * vfoldertypes.xml: Make the date comparisons read the same as the + ones in filtertypes.xml + +2001-12-17 Jeffrey Stedfast <fejj@ximian.com> + + * filtertypes.xml: Add new action to execute a shell command. + +2001-12-09 Jon Trowbridge <trow@ximian.com> + + * vfoldertypes.xml: Add "Needs Reply" option to different status + types. + + * filtertypes.xml: Add "Needs Reply" option to different status + types. + +2001-11-15 Zbigniew Chyla <cyba@gnome.pl> + + * rule-editor.c (set_source): Removed U_. Fixes #15415. + +2001-11-21 Not Zed <NotZed@Ximian.com> + + * rule-editor.c (rule_edit): Hook onto destroy event. + (edit_editor_destroyed): IF we get destroyed, fake a -1 click + event to clean up. + (rule_add): hook onto destroy of dialogue. + (add_editor_destroyed): Simulate -1 click event to clean up. Fix + for #15745. + +2001-11-20 Not Zed <NotZed@Ximian.com> + + * vfolder-rule.c (source_add): Desensitise button while we're + running, and if we are destroyed, exit and do nothing when we're + done. Fixes crash in #15498. + + * filter-folder.c (button_clicked): Ref 'ff' around dialogue + showing incase we go away before it returns. Also desensitise + button that invoked us while its being processed & remove + 'is_active' hack. Fixes similar problems to those in #15498. + +2001-11-12 Jeffrey Stedfast <fejj@ximian.com> + + * filter-rule.c (validate): Force the user to name the filter. + + * vfolder-rule.c (validate): Force the user to name the vfolder. + +2001-10-29 <NotZed@Ximian.com> + + * rule-editor.c: Some debug printf fixes for printf's that dont + like null %s's. + Fixed previous fix. + (rule_editor_play_undo): Need to ref rule since add doesn't. This + doesn't crash anymore but doesn't seem to do everything right either. + +2001-10-28 <NotZed@Ximian.com> + + * filter-context.c (filter_rename_uri): Implement, change any + folder uri's that have been renamed, to the new one. + (filter_delete_uri): Dont actually do any work (yet). + + We could probably put rename_uri on every rule context/filter + part/filter element, and let their methods handle it, but for now + its easy enough just to handle the few cases that we have to + handle manually. + + * rule-context.c (rule_context_delete_uri): Update a filter + context for a deleted uri, e.g. folder removed. + (rule_context_rename_uri): Update a filter context for a renamed + uri, e.g. + + * filter-folder.c (filter_folder_set_value): New function to set + the uri of a folder filter. + + * rule-editor.c (rule_move): Add undo for move. + (rule_editor_add_undo): Add extra rank item. + (rule_editor_play_undo): handle rank case. + (rule_editor_finalise): Clean up any hanging over undo log. + (editor_clicked): Only enable 'undo' if we have + EVOLUTION_RULE_UNDO enabled. Code still a bit flakey. + (rule_editor_construct): Only enable a cancel button if + EVOLUTION_RULE_UNDO is set. + (rule_editor_add_undo): Only add if undo enabled. + (rule_editor_add_undo): Fix enable undo logic. + + * filter-rule.c (filter_rule_set_name): Emit a changed event if it + changes. + (filter_rule_set_source): Same. + +2001-10-26 <NotZed@Ximian.com> + + * rule-context.c (rule_context_find_rank_rule): Find a rule at a + specific rank/source. + + * rule-editor.c (add_editor_clicked): Log the added object. + (rule_editor_add_undo): New function to add an undo record to the + rule editor. + (edit_editor_clicked): Log the changed object. + (rule_delete): Add undo object. + (rule_editor_play_undo): Play an undo log back. + +2001-10-26 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c (rule_add): Desensitize the parent dialog. + (rule_edit): Same. + (add_editor_clicked): Re-sensitize it. + (edit_editor_clicked): Same. + +2001-10-25 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c: Keep track of the current editor dialog window so + that on exit, we can close it too. + (rule_edit): Don't make the dialog modal and set it's parent + window as well as don't allow more than a single editor window to + be popped up. + (rule_add): Same. + +2001-10-24 <NotZed@Ximian.com> + + * rule-context.c (rule_context_class_init): Add a changed signal. + Emits if the order changes or if you add or remove a rule. + (rule_context_rank_rule): Fix rank rule to properly rank based on + source, not merely on list position. + (rule_context_add_rule): Also emit changed signal. + (rule_context_remove_rule): Same. + (rule_context_rank_rule): Emit changed signal. + +2001-10-20 Jon Trowbridge <trow@ximian.com> + + * rule-editor.c (set_source): Translate the rule names. (Bug + #13082) + +2001-10-17 Ettore Perazzoli <ettore@ximian.com> + + * filter-folder.c (button_clicked): Pass the toplevel to + `evolution_shell_client_user_select_folder()'. + * vfolder-rule.c (source_add): Likewise. + +2001-10-15 Jeffrey Stedfast <fejj@ximian.com> + + * filter-folder.c (button_clicked): Kludge to raise the filter + dialog when the folder-selection window is closed. + +2001-10-15 <NotZed@Ximian.com> + + * filter-input.c (xml_decode): If we have no node content, dont + append any value or try to decode it. Gets rid of a bunch of + annoying warnings. + +2001-10-04 Jeffrey Stedfast <fejj@ximian.com> + + * vfolder-rule.c (validate): And again here. + + * filter-folder.c (validate): Same. + + * filter-datespec.c (validate): Take out the "Oops" part of the + warning. + +2001-10-04 <NotZed@Ximian.com> + + * rule-context.c (save): "safe" save code, first save to .#name, + then rename to name if it worked, also create backups to name~. + Means filters/etc wont get reset/lost if disk fills up, although + relies on libxml failing properly. + (new_rule_clicked): Removed warning, we do now have changed + signals! + +2001-09-28 <NotZed@Ximian.com> + + * vfolder-rule.c (vfolder_rule_add_source): Emit changed events + when we change it. + (vfolder_rule_remove_source): " + +2001-09-28 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c (edit_editor_clicked): Set the item label to the + new rule name, not the old rule name. Fixes bug #11168. + +2001-09-27 <NotZed@Ximian.com> + + * vfolder-rule.c (xml_decode): Use g_strdup for the uri, not the + xml memory. + + * filter-driver.c, filter-message-search.c: Removed, again, how + did they come back??? + +2001-09-13 <NotZed@Ximian.com> + + * filter-filter.c (filter_filter_add_action): + (filter_filter_remove_action): + (filter_filter_replace_action): Emit changed events. + + * filter-rule.c (filter_rule_xml_decode): Emiot a rule changed + event. + (filter_rule_copy): Emit a changed event. + (filter_rule_replace_part): " + (filter_rule_add_part): " + (filter_rule_remove_part): " + (filter_rule_xml_decode): Freeze around decoding, so we only emit + changed when done. + (filter_rule_emit_changed): New function to emit changed events if + not frozen. + +2001-09-13 <NotZed@Ximian.com> + + * rule-context.c (rule_context_class_init): Added a 'rule_added' + and 'rule_removed' signal. + (rule_context_load): Set a (private) frozen flag while we're + loading. + (rule_context_add_rule): Emit a rule_added signal if we're not + frozen. + (rule_context_remove_rule): Emit a rule_removed signal if we're + not frozen. + +2001-09-12 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c (rule_edit): Clone the current rule before editing + it so that changes can be undone. + (edit_editor_clicked): If the user hit OK, replace the original + rule with the new one. + + * vfolder-rule.c (vfolder_rule_finalise): Free the sources list. + (rule_copy): Implemented. + + * filter-filter.c (rule_copy): Implemented. + + * filter-rule.c (filter_rule_copy): New convenience function to + copy one rule "into" another. + (rule_copy): Default implementation. + (filter_rule_clone): Use filter_rule_copy() internally to get rid + of the nastiness/slowness of xml encoding and then decoding. + +2001-09-12 <NotZed@Ximian.com> + + * vfoldertypes.xml: Remove the match-all from the not + body-contains, so we can use the new vector not function. + +2001-09-10 <NotZed@Ximian.com> + + * filter-score.c (format_sexp): Encode the score as an integer + string, not as a string of integers. #5098. + +2001-09-10 Jeffrey Stedfast <fejj@ximian.com> + + * filter-datespec.c (button_clicked): Allow the dialog's title to + be translated. + +2001-08-19 Chris Toshok <toshok@ximian.com> + + * filter-input.c: #include <sys/types.h> for regex_t on freebsd. + +2001-08-15 Jeffrey Stedfast <fejj@ximian.com> + + * filter.glade: Added key accelerators. + +2001-08-14 Peter Williams <peterw@ximian.com> + + * filter-rule.c (xml_decode): Match either "title" or "_title" to + allow for translations of the title (provided in the default + files) + +2001-08-13 Peter Williams <peterw@ximian.com> + + * filter-datespec.c (make_span_editor): Add a gettext around our static + strings. + (format_time): New function. Convert a time_t to a gchar * (with i18n) + (describe_button): Use format_time instead of ctime. + +2001-08-10 Peter Williams <peterw@ximian.com> + + * rule-context.c (rule_context_add_rule_gui): Make this compile again. + +2001-08-10 Jeffrey Stedfast <fejj@ximian.com> + + * rule-context.c (rule_context_add_rule_gui): No need to + gtk_widget_show() the gnome dialog widget twice... + + * vfolder-rule.c (get_widget): Unref the glade_xml gui object + before returning. + +2001-08-08 Radek Doulik <rodo@ximian.com> + + * filter-folder.c (button_clicked): don't mix g_free and xmlAlloc + (xml_decode): don't mix g_free and xmlAlloc + + * filter-code.c (filter_code_init): use xmlStrdup instead of + g_strdup + + * filter-input.c (filter_input_new_type_name): use xmlStrdup + instead of g_strdup + (filter_input_finalise): don't mix g_free and xmlAlloc + + * filter-option.c (clone): use xmlStrdup instead of g_strdup + (free_option): don't mix g_free and xmlAlloc + + * filter-source.c (clone): use xmlStrdup rather than g_strdup + + * filter-element.c (filter_element_finalise): don't mix g_free and + xmlAlloc + +2001-08-07 Not Zed <NotZed@Ximian.com> + + * filter-rule.c (filter_rule_finalise): Properly free the list of + parts, and the private data. + (FilterRulePrivate): Remove unused 'parts' member. + + * filter-option.c (free_option): For freeing options. + (filter_option_finalise): Free options list. + + * filter-element.c (filter_element_finalise): free name. + + * filter-input.c (filter_input_finalise): Free type and values + list. + + * filter-context.c (filter_context_finalise): Free the actions. + + * rule-context.c (rule_context_finalise): Remove the totally weird + arsed *_set_list free code. + (free_part_set): + (free_rule_set): Use this to free stuff using g_list_foreach. + (rule_context_finalise): Free the error string. + (rule_context_finalise): Free the rules and parts. + +2001-08-07 Jeffrey Stedfast <fejj@ximian.com> + + * filtertypes.xml: Reverted my previous change, I fixed the filter + code to handle this the way danw said to handle it in bug #5886 + now. + +2001-08-07 Jeffrey Stedfast <fejj@ximian.com> + + * filtertypes.xml: Removed the "is" and "is not" rules from the + xml file for address matching because users are easily confused. + +2001-08-03 Jeffrey Stedfast <fejj@ximian.com> + + * filter-rule.c (get_widget): Do an evil kludgy hack so that the + Rule Name entry widget gets focused when the filter editor is + shown. + +2001-08-02 Jeffrey Stedfast <fejj@ximian.com> + + * filter-rule.c: Wrap some debug printf's with d(). + + * rule-context.h: Removed prototype for rule_context_delete_rule() + since the function doesn't exist. + +2001-07-23 Jon Trowbridge <trow@ximian.com> + + * vfolder-rule.c (validate): Added a validate function + that checks to make sure that vfolders that have "specific + folders" as their source actually have a non-empty list of + source folders selected. (Bug #4937) + (get_widget): If fr->source is NULL for some reason, bring + it into sync with the default in the option menu. + +2001-07-23 Peter Williams <peterw@ximian.com> + + * filter-datespec.c (make_span_editor): Change the butt-ugly + UI to a saner (and just as flexible) one. Instead of all those + spinbuttons, just have one and let the user select the time unit. + (omenu_item_activated): New function. When the user changes the + time unit, convert it from the old number. Pretty. + (adj_value_changed): This function is now simpler. + (set_adjustments): Also modified for new UI model. + (button_clicked): Set the selected_type before calling the callback. + (FilterDatespecPrivate): Members change a bit. + (filter_datespec_init): No longer need to allocation spinbuttons + (filter_datespec_finalise): No longer need to free spinbuttons. + +2001-07-20 Jeffrey Stedfast <fejj@ximian.com> + + * filtertypes.xml: Removed the "Forward To" filter action. + +2001-07-18 Jeffrey Stedfast <fejj@ximian.com> + + * rule-context.c (rule_context_get_rank_rule): Return -1 if we + don't find it? This is what most of the code expected but not what + we were returning on fail. + +2001-07-12 Zbigniew Chyla <cyba@gnome.pl> + + * filter-datespec.c (stringify_agoness): Marked string for translation. + +2001-07-12 Jeffrey Stedfast <fejj@ximian.com> + + * filtertypes.xml: Users should not be able to filter on "Status + is Deleted" since we don't allow that in the filter driver code. + +2001-07-11 Jason Leach <jleach@ximian.com> + + * vfoldertypes.xml: Copied the "Attachments" rule part over from + filtertypes.xml, would be a powerful feature for vfolders (see all + the patches across all folders, or all the attachments you've sent, + without having to duplicate potentially big files, blah blah, bug + #1155). + +2001-07-10 Peter Williams <peterw@ximian.com> + + * vfoldertypes.xml: Put a match-all around the not-body-contains + to make it work per-message. + + * filtertypes.xml: Same. + +2001-07-05 Jeffrey Stedfast <fejj@ximian.com> + + * filter-rule.c (get_widget): Set the focus on the title of the + filter rule. + +2001-07-09 Anna Marie Dirks <anna@ximian.com> + + * rule-context.c (rule_context_add_rule_gui): Increased the size + of the "Add Filter Rule" dialog to 600 x 400, so that no resizing + is necessary to use the dialog. + +2001-07-09 Jon Trowbridge <trow@ximian.com> + + * filter-source.c (filter_source_get_sources): Bonobo-conf-ified. + Removed /home/trow hard-wiring. :) + (xml_encode): Encode things properly. + (xml_decode): Decode things properly. + (get_widget): Ignore accounts w/o source URLs. + (clone): Set the ->name in our copy. + +2001-07-05 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c (rule_delete): Select the most appropriate filter + rule. + + * filtertypes.xml: Fix bug #4043: s/colour/color + +2001-07-03 Peter Williams <peterw@ximian.com> + + * filter-source.c (get_widget): Prevent crashing while we work + this out. + + * filter-rule.c (get_widget): Don't try to gtk_widget_grab_default + with a widget that can't be the default. Altough it should be able + to.... + +2001-07-02 Sam Creasey <sammy@oh.verio.com> + + * filter-int.c: Added an integer type for filtering values. used + for size. + + * Makefile.am (SOURCES): added filter-int.c, filter-int.h + + * filtertypes.xml: added a part entry for size based filters + +2001-07-02 Anna Marie Dirks <anna@ximian.com> + + * filter-rule.c (get_widget): Changed "Add criterion" button to + have normal button relief in response to complaints of it not + appearing clickable. + + * filter-filter.c: Changed "Add action" button to have normal + button relief in response to complaints of it not appearing + clickable. + +2001-06-29 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c (rule_editor_construct): Set the filter-rule + dialog to be user-resizable. + +2001-06-27 Jeffrey Stedfast <fejj@ximian.com> + + * filtertypes.xml: Make "Move" the default action. + +2001-05-08 Not Zed <NotZed@Ximian.com> + + * filter-rule.c: Deleted Gediminas patch. + +2001-05-08 Gediminas Paulauskas <menesis@delfi.lt> + + * filter-rule.c (xml_decode): allow "_title" in user + rules. translate them and encode to utf8. + (get_rule_part_widget): do not call gettext on part->title. It is + always translated already. + +2001-04-26 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c (rule_edit): Set the default size of the dialog to + 600x400, which seems to be a nice size that fits all the widgets + into it. + (rule_add): Same. + +2001-04-26 Dan Winship <danw@ximian.com> + + * Makefile.am (INCLUDES): Remove UNICODE_CFLAGS + +2001-04-26 Not Zed <NotZed@Ximian.com> + + * filter-part.c (filter_part_xml_create): Blah blah fix for xml1 + broken utf8 encoding, and use "g" memory for all allocations. + (filter_part_finalise): Free our data properly. + +2001-04-20 Kjartan Maraas <kmaraas@gnome.org> + + * filter-rule.c: Pull up fix for translation of filter + direction drop down menu from the branch. + +2001-04-18 Dan Winship <danw@ximian.com> + + * filter-colour.c, filter-datespec.c, filter-folder.c, + filter-input.c, filter-option.c, filter-rule.c, filter-score.c, + filter-source.c, score-rule.c (xml_decode): Plug memory leaks. + + * rule-context.c (rule_context_finalise): Implement. Free stuff. + + * filter-element.h: #include <gnome-xml/xmlmemory.h> here for xmlFree + + * filter-filter.c, filter-part.c: Remove xmlmemory.h #include + +2001-04-15 Jeffrey Stedfast <fejj@ximian.com> + + * filtertypes.xml: s/Is/is/ and s/Is Not/is not/ to be more + consistant with the rest. + +2001-04-13 Jon Trowbridge <trow@gnu.org> + + * filtertypes.xml: Add XML specs for source account filtering. + + * filter-element.c (filter_element_new_type_name): Recognize + type "source", construct a FilterSource. + + * filter-source.c: Added. A FilterElement for the account e-mail + comes from. + +2001-04-04 Kjartan Maraas <kmaraas@gnome.org> + + * filter-editor.c: Fix headers. + * filter-filter.c: Same here. + * filter-option.c: Same here. + * filter-part.c: Same here. + * filter-rule.c: Same here. + * rule-editor.c: Same here. + * score-editor.c: Same here. + * vfolder-editor.c: Same here. + * vfolder-rule.c: Same here. + +2001-04-02 Jeffrey Stedfast <fejj@ximian.com> + + * filter-filter.c (option_activate): Set the newpart on the + container object. + (less_parts): Remove the rule tht the user wants to remove. + (attach_rule): Attach a new rule and it's remove button to the end + of the table. + (more_parts): Fix to resize the table and such. + (get_widget): Don't have a remove action button, we are putting + this next to the rule part now. + +2001-03-30 Kjartan Maraas <kmaraas@gnome.org> + + * *.*: Fix headers. Remove unneccesary ones and replace + with more finegrained ones where needed. + +2001-03-22 Jeffrey Stedfast <fejj@ximian.com> + + * filter-datespec.c (validate): Oops, an unspecified date is '0', + not -1. + +2001-03-21 Jeffrey Stedfast <fejj@ximian.com> + + * rule-context.c (new_rule_clicked): Validate the rule before + closing. + +2001-03-20 Jeffrey Stedfast <fejj@ximian.com> + + * rule-editor.c (rule_edit): Set the editor dialog modal rather + than setting the filter dialog insensitive. Also ref re->edit + since we unref it when the editor closes. This should fix bug + #1905. + (edit_editor_clicked): No need to set the filter dialog sensitive + again. + (rule_add): Set the add-rule dialog modal and don't set the filter + dialog insensitive. + (add_editor_clicked): No need to set the filter dialog sensitive + again. + +2001-03-17 Jeffrey Stedfast <fejj@ximian.com> + + * filter-option.c (build_code): Since we are now using + filter-option widgets in place of system-flag, we do not need a + "code" part so if there isn't a code part, don't build it. + (clone): Updated to allow NULL code parts. + +2001-03-17 Jeffrey Stedfast <fejj@ximian.com> + + * filter-element.c (filter_element_new_type_name): If the filter + type is a "system-flag", use the optionlist type as type + system-flag has been removed. This should allow backward + compatability. + + * filter-editor.c (filter_editor_construct): Remove the menu that + is in the glade file because we want to replace it with our menu, + not append items to that menu. + + * filtertypes.xml: Oops, missed the system-flag action-set. + + * vfoldertypes.xml: Update "status" ruleset. + +2001-03-16 Jeffrey Stedfast <fejj@ximian.com> + + * Makefile.am: Removed filter-url.[c,h] and + filter-system-flag.[c,h] + + * filter-element.c (filter_element_new_type_name): Removed + references to the url-type and system-flag types. + + * filtertypes.xml: Removed "source" type and fixed "status" to use + the optionmenu. + + * filter-url.[c,h]: Removed. + + * filter-system-flag.[c,h]: Removed (just use optionmenu). + +2001-03-15 Not Zed <NotZed@Ximian.com> + + * filter.glade: Changed the edit_filter to be a standalone window + rather than a widget, so we can get the rule editor part out + separately. Same for vfolder editor, and new score, and basic rule + editors. + + * score-editor.c (score_editor_new): Turned back on object + stuff, subclass rule-editor, and removed most of the code. + + * filter-editor.c (filter_editor_new): Turned into an object, + subclass rule-editor, removed most of the code. Now we accept the + source list during create, and plug that into the glade. + + * vfolder-editor.c (vfolder_editor_new): Turned back on object + stuff, subclass rule-editor, and removed most of the code. + + * Makefile.am (libfilter_la_SOURCES): Added rule-editor.[ch]. + + * filter-filter.c (validate): inherit the validate function and + also validate the actions part of a filterfilter. + + * filter-rule.c (filter_rule_validate): New method so that filter + rules can validate themselves. + (validate): Default implementation, validates base rules. + + * rule-editor.h: New generic rule editor, to be used for filter + editor/vfolder editor/score editor/saved searches editor. + +2001-03-15 Gediminas Paulauskas <menesis@delfi.lt> + + * filter-system-flag.c: translate status flag title. + +2001-03-12 Jeffrey Stedfast <fejj@ximian.com> + + * filtertypes.xml: Added an "Attachments" filter option where you + can filter messages that have (or do not have) attachments. This + does not allow you to filter based on the types of the + attachments. + +2001-03-08 Jeffrey Stedfast <fejj@ximian.com> + + * vfolder-editor.c (double_click): Make sure we have something + selected first ;-) + + * filter-editor.c (double_click): And here too. + +2001-03-03 Not Zed <NotZed@Ximian.com> + + * filter.glade: Added option menu to vfolder editor. + +2001-03-02 Not Zed <NotZed@Ximian.com> + + * vfolder-rule.c (get_widget): Setup the data on the base source + opiton menu, and make hte option menu reflect the source. + (select_source_with): Set the source type for this + rule. e.g. these folders, "with ..." + + * filter-editor.c: Removed the N_() stuff from the source_names + array, they must not be internationalised!!! + +2001-02-28 Not Zed <NotZed@Ximian.com> + + * filter-rule.c (filter_rule_clone): New function to clone rules. + +2001-02-23 Not Zed <NotZed@Ximian.com> + + * filtertypes.xml: Added mailing list matching rules. + renamed mailing list options to be more meaningful. + + * vfoldertypes.xml: Added mailing list rules. + renamed mailing list options to be more meaningful. + +2001-02-11 Gediminas Paulauskas <menesis@delfi.lt> + + * filter.glade.h: removed. + * filter.glade: do not donnt output to above one. + * Makefile.am: do not include filter.glade.h in EXTRA_DIST. + +2001-02-06 Dan Winship <danw@ximian.com> + + * filter-option.c (get_widget): Translate the option title. + (Noticed by Kjartan). + +2001-02-05 Kjartan Maraas <kmaraas@gnome.org> + + * filter-code.c, filter-colour.c, filter-context.c, + filter-element.c, filter-input.c, filter-score.c, + filter-system-flag.c, filter-url.c: Add #include <config.h> + and mark some strings for translation. + +2001-01-22 Not Zed <NotZed@Ximian.com> + + * filter-message-search.[ch]: Removed, now lives in + camel-filter-search.* + + * Makefile.am (libfilter_la_SOURCES): Removed filter-driver.[ch] + and filter-message-search.[ch]. + + * filter-driver.[ch]: Removed. now lives in camel-filter-driver.* + +2001-01-19 Jeffrey Stedfast <fejj@ximian.com> + + * filter-driver.c (filter_driver_filter_message): Set the delete + bit *before* copying to the default folder. + +2001-01-18 Jeffrey Stedfast <fejj@ximian.com> + + * filter-filter.c (less_parts): Er, don't set the button + insensitive if there is *1* action, set it insensitive if there + are less than or equal to *1* actions. Doh! + (more_parts): Only set the remove button sensitive if there is + more than 1 action. + (get_widget): Here too. + +2001-01-16 Jason Leach <jasonleach@usa.net> + + * e-search-bar.[ch]: Moved ESearchBar to $(toplevel)/widgets/misc, + a more appropriate home. Bug #1060. + +2001-01-13 Jeffrey Stedfast <fejj@ximian.com> + + * filter-driver.c (do_copy): Moved p->copied to the inner part of + the loop so that in the case of a folder not existing, it doesn't + think that the message was already copied to some place and thus + not save it to the Inbox. + (do_move): Same. + +2001-01-10 Jeffrey Stedfast <fejj@helixcode.com> + + * filtertypes.xml: Changed Priority to Score. + + * filter-option.c (get_widget): Attach to the "activate" signal - + this should now make it so that a filter-option will "remember" + what a user changed. + + * filter-system-flag.c (get_widget): Don't reset fsf->value to the + first system flag, this should already be defaulted to the + appropriate flag. This should fix the problem of always defaulting + to the first menu option and thus "forgetting" the user's settings. + +2001-01-04 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-system-flag.c: comment out some of the system flags as we + don't want to use them. + (xml_encode): Update the printf + (get_widget): Use strcmp instead of g_strcasecmp. + +2001-01-02 Lauris Kaplinski <lauris@helixcode.com> + + * filter-input.c (xml_encode): Encode utf8 + (xml_decode): Decode utf8 + + * filter-option.c (xml_create): Decode utf8 + + * filter-part.c (filter_part_xml_create): Decode utf8 + + * filter_rule.c (xml_encode): Encode utf8 + (xml_decode): Decode utf8 + +2001-01-02 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (do_flag): Set the 'dirty' flag - this should + fix the problem of flags not being set (or, more precisely, + synced). + (filter_driver_filter_message): Here too. + +2000-12-21 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-message-search.c (header_contains): Use + e_utf8_strstrcase() instead of just strstr(). + (header_starts_with): Make sure that the header contents are + longer than the starts-with string. + + * vfoldertypes.xml: Don't send \"Subject\" to body-contains. + Also added matches, starts-with, and ends-with xml stuff. + +2000-12-28 Dan Winship <danw@helixcode.com> + + * filter-message-search.c (handle_multipart, body_contains, + body_regex): Use CamelContentType rather than GMimeContentField. + +2000-12-24 Not Zed <NotZed@HelixCode.com> + + * Merge from camel-mt-branch. + +2000-12-21 Not Zed <NotZed@HelixCode.com> + + * filter-message-search.c (filter_message_search): And here too. + + * filter-driver.c (filter_driver_finalise): Kind of revert an + accidentally commited patch for e_sexp_unref. + +2000-12-20 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_filter_message): Oops, slight + logic error. We want to copy the message to the default folder if + the message hasn't been Moved (which is the same as Copied && + Deleted). This fixes bug #1007. + + * filter-rule.c (more_parts): Make sure we have more than 1 part + before we sensitize the "remove" button. + +2000-12-20 Not Zed <NotZed@HelixCode.com> + + * filter-message-search.c (filter_message_search): Oops, missed a + gtk unref of the now-no-longer gtk e_sexp. + + * filter-driver.c: Remove mail_tool_lock stuff. + (filter_driver_finalise): unref e_sexp properly. + +2000-12-12 Christopher James Lahey <clahey@helixcode.com> + + * e-search-bar.c (esb_pack_menubar): Fixed some warnings. + +2000-12-11 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-folder.c (button_clicked): Added a kludge, 'is_active' + which is a static variable that holds whether or not there is an + active shell folder dialog up or not. + + * vfolder-editor.c (rule_delete): Autoselect the rule that ends up + in the same position (or the one above it if the list is shorter + than the position). + +2000-12-08 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-rule.c (get_widget): Don't highlight the title if it's + "Untitled" because switching widget focus doesn't cause this + selection to go away. + +2000-12-06 Kjartan Maraas <kmaraas@gnome.org> + + * filter-editor.c: Mark some strings for translation. + +2000-12-01 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-element.c (filter_element_new_type_name): Added support + for the system-flag type. + + * Makefile.am: Added filter-system-flag.[c,h]. + + * filter-system-flag.[c,h]: New type for system flags. + + * filtertypes.xml: Oops, looks like we were still using integers + as arguments to set-flag. Change over to using strings which are + safer and also change the name to set-system-flag. + + * filter-driver.c (do_flag): Use strings instead of integers. + Instead of set-flag, the callback is now set-system-flag for less + confusion. Sorry Ettore, but you'll have to change your filters. + + * filtertypes.xml: Added system-flags stuff. + + * vfoldertypes.xml: And here too. + + * filter-message-search.c (system_flag): New ESExp callback for + filtering on system flags. + +2000-11-30 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_filter_message): Use + camel_message_info_free() instead of freeing everything by hand - + is this a new function? I don't ever recall seeing this + before. Also use my new function, + camel_message_info_new_from_header - ahhh... this code is now so + beatiful. Okay, I'm done. + +2000-11-30 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_filter_message): Update to use + EStrv in appropriate places (wrapped with #ifdef DOESTRV for the + moment). + +2000-11-27 Jeffrey Stedfast <fejj@helixcode.com> + + * filtertypes.xml: Moved the regex filter rule around - we've + changed the format a bit. + + * filter-option.c (option_activate): Removed. + (get_widget): Don't connect the activate signal. + + * filter-folder.c (validate): Updated. + + * filter-datespec.c (validate): Updated. + + * filter-part.c (filter_part_validate): Updated. + + * filter-input.c (validate): Check the filter-input type - if it's + of type "regex", then check for regex validity. + + * filter-element.c (filter_element_validate): No longer takes a + gpointer argument. + (filter_element_new_type_name): Allow type "regex" and create a + new filter-input with type "regex". + +2000-11-24 Michael Meeks <michael@helixcode.com> + + * filter-message-search.c (get_full_header): impl. + (header_full_regex): use it. + +2000-11-23 Michael Meeks <michael@helixcode.com> + + * filter-message-search.c (header_full_regex): impl. + +2000-11-21 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-message-search.c: took out some no longer needed + printfs. + +2000-11-15 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_filter_folder): Sync here + instead. + (filter_driver_filter_mbox): And here too. + (filter_driver_finalise): Don't sync here afterall - it's more + preferable to sync right after processing. + +2000-11-15 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_finalise): Sync the + defaultfolder. + (filter_driver_filter_folder): Sync here instead. + (filter_driver_filter_mbox): And here too. + +2000-11-13 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-message-search.c (header_matches): Neglect any leading + whitespace in the header contents. + (header_starts_with): Same. + (header_ends_with): Same. + (header_soundex): Same. + +2000-11-12 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_filter_message): If there is a + default folder and the message hasn't been deleted then... should + be: If there is a default folder and the message hasn't been + copied to another folder and the message hasn't been deleted... + (filter_driver_filter_message): Make it so that the FILTER_LOG_END + is only called if filtered were applied to the message so we don't + get huge gaps of whitespace in the log file. + (filter_driver_filter_message): + +2000-11-10 Christopher James Lahey <clahey@helixcode.com> + + * e-search-bar.c: Made the underline show up properly in the main + menu bar. + +2000-11-10 Christopher James Lahey <clahey@helixcode.com> + + * e-search-bar.c: Switched from using gtk_menu_item_new_with_label + for the menu header to using gnome_stock_menu_item. + +2000-11-08 Anna Marie Dirks <anna@helixcode.com> + * e-search-bar.c: Fixed two spacing problems: first, changed + the spacing around the end of the text-entry widget so that + the text entry is always aligned with the beginning of the scrollbar; + second, trimmed down the space between the widgets in the search bar. + + +2000-11-06 Not Zed <NotZed@HelixCode.com> + + * filter-driver.c (do_flag): you shouldn't use an integer to + set the flag. You should use a string, and look it up, because + the flag bits might change. + (filter_driver_filter_message): Can som e one PLEASE STOP + INDENTING THE CODE. Even if i have to come over the and + beat it into you. YOU DONT INDENT CODE ONCE ITS BEEN CHECKED IN + TO CVS, otherwise you SCREW UP THE DIFF's. Can't you please + please learn this? + (filter_driver_log): Fixes for api changes to mime_message. + +2000-11-05 Not Zed <NotZed@HelixCode.com> + + * filter-message-search.c (get_sent_date): Fix for date change + api. No longer need to encode/decode the date, after its been + encoded/ecoded already. + (get_received_date): Likewise. + +2000-11-06 Christopher James Lahey <clahey@helixcode.com> + + * e-search-bar.h: Fixed the argument comment. Removed an old enum + that's not used here. + +2000-11-06 Christopher James Lahey <clahey@helixcode.com> + + * Makefile.am: Added e-search-bar.c and e-search-bar.h. + + * e-search-bar.c, e-search-bar.h: Moved this from + e-addressbook-search. + +2000-11-02 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_log): Fix for when 'desc' is + NULL. + (filter_driver_filter_message): Use a more user-friendly filter + name in the log file. + +2000-11-01 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_filter_message): Use + filter_driver_log() where appropriate. + (do_copy): Use the service url for the path rather than the + folder->full_name because that'll only get you a "/mbox" which is + entirely useless. Replace occurences of report_status with + filter_driver_log. + (do_move): Same. + (report_status): Don't use this for logging anymore, use only for + reporting the status back to the caller. + (filter_driver_log): Renamed from filter_driver_status_log. Now + ONLY handles file logging and is for INTERNAL USE ONLY. + (do_flag): Replace occurences of report_status with + filter_driver_log. + (do_score): Same. + (do_colour): Same. + (do_stop): Same. + +2000-11-01 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-datespec.c (validate): Check to make sure the user has + entered a valid date. + +2000-10-31 Jeffrey Stedfast <fejj@helixcode.com> + + * filtertypes.xml: Updated to allow the user to select "sounds + like" or "does not sound like" (uses header-soundex). + + * filter-message-search.c (header_matches): Oops. Should be using + !g_strncasecmp. This should fix it so this filter match works + right. + (header_starts_with): Same. + (header_ends_with): Same. + (header_soundex): New filter callback for soundex matching (yes, + it's probably a bloated feature but hey, it was fun to code) + +2000-10-31 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-folder.c (validate): Override the default validate + function to only return TRUE if a folder has been selected. + + * filter-editor.c (rule_add): Validate that all the rule parts and + action parts are correctly filled in. + (rule_edit): Same. + +2000-10-31 Jeffrey Stedfast <fejj@helixcode.com> + + * filtertypes.xml: Updated to add an action to set message flags. + + * filter-driver.c (do_flag): New callback to set message info + flags. + + * filter-element.c (filter_element_set_data): New convenience + function to set the data on a FilterElement. + + * filter-url.c (get_widget): Set the sources list to point to the + FilterElement data. + +2000-10-31 Federico Mena Quintero <federico@helixcode.com> + + * filter-rule.c (get_widget): Do not pad around the Name hbox; + its parent already has spacing. + Do not pad around the inframe's children; the inframe already has + spacing. + +2000-10-30 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-option.c (option_activate): If a regex option is + selected, change the FilterElement data to TRUE else set to FALSE. + + * filter-rule.c (more_parts): Validate the previously entered + FilterPart before allowing the user to add a new FilterPart. + + * filter-part.c (filter_part_validate): New convenience function + to validate an entire FilterPart expression. + + * filter-input.c (validate): Validate the entry text if it + contains a regular expression. + + * filter-element.[c,h]: New virtual function to validate the + contents of the FilterElement (useful for regex and sexp). + (filter_element_validate): You get the idea... + +2000-10-30 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-input.c: + * filter-option.c: + * filter-part.c: Pure formatting changes, no actual code + changes. Since I know I'm going to get flamed for this, I'm sorry + but I'll probably have to modify code in these files and it's + easier if the code is quickly readable by me. + + * filter-rule.c (get_widget): Set the "remove" button insensitive + for <= 1 instead of == 1. + +2000-10-28 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_filter_message): Copy the message + to the default folder if it wasn't marked as deleted. + +2000-10-27 Jeffrey Stedfast <fejj@helixcode.com> + + * filtertypes.xml: Added header-starts-with, header-ends-with, and + header-exists menu items. + + * filter-message-search.c (header_starts_with): New callback to + match the beginnings of headers. + (header_ends_with): New callback to match the ends of headers. + (header_exists): New callback to determine if a header exists + which is useful when filtering out all those pesky bug-buddy + emails! + +2000-10-27 Jeffrey Stedfast <fejj@helixcode.com> + + * filtertypes.xml: Add header-matches expressions ("is" / "is not"). + + * filter-message-search.c (header_matches): New callback to match + headers exactly (aka strcmp rather than strstr). + +2000-10-27 Jacob "Ulysses" Berkman <jacob@helixcode.com> + + * filter-driver.c (filter_driver_filter_mbox): divide before + multiple so that we don't overflow. + +2000-10-27 Christopher James Lahey <clahey@helixcode.com> + + * Makefile.am: Fixed this to include EXTRA_GNOME_CFLAGS. + +2000-10-27 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (do_move): Don't mark as deleted here, otherwise + the message will have the DELETED flag set in the folder it's + being moved to. + (do_delete): Don't set the DELETED flag here either...we'll only + set it at the very end of the filtering process. + (filter_driver_filter_message): Set the DELETED flag after all + processing is completed. + +2000-10-26 Jeffrey Stedfast <fejj@helixcode.com> + + * filtertypes.xml: Readded Source url stuff. + + * filter-element.c (filter_element_new_type_name): Added url stuff + back in. + + * filter-url.[c,h]: Back from the dead... + + * Makefile.am: Re-added filter-url.[c,h]. + +2000-10-25 Jeffrey Stedfast <fejj@helixcode.com> + + * filtertypes.xml: Added option menu items to allow searching + based on regular expressions. + + * filter-message-search.c (body_regex): New callback to match text + in the body using regex. + (body_contains): Modified to only match using strstr. + (header_regex): New callback to match headers using regex. + (header_contains): Modified to only match using strstr. + +2000-10-24 Jeffrey Stedfast <fejj@helixcode.com> + + * filtertypes.xml: Take out the reference to "Source". + + * filter-element.c (filter_element_new_type_name): Remove + filter-url code. + + * filter-url.[c,h]: What was I smoking? There's no good reason to + filter on source urls as there are other ways to get the same + effect. Thanks to both Zucchi and Miguel for helping me see this + :-) + +2000-10-24 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c: Fixed NULL in fprintf. + +2000-10-24 Dan Winship <danw@helixcode.com> + + * Makefile.am (libfilter-i18n.h): Build a fake header file with + the titles from the xml files, for translation purposes. + + * filter-rule.c (get_rule_part_widget): Call _() on the rule's + title. + + * filter-option.c (get_widget): Call _() on the option's title. + + * filter.glade: Turn on translatable strings. + + * libfilter-i18n.h, filter.glade.h: Translatable string files. + + * add #include <config.h> to a bunch of C files so that _() + actually does anything. Undo some UTF8 frobs since we're now + dealing in localized strings. + +2000-10-23 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-filter.c (less_parts): Set the remove button insensitive + if there is only 1 action left. + (more_parts): Set the remove button sensitive (since we now have 2 + or more actions). + (get_widget): If there is only 1 action, disable the remove + button. + + * filter-rule.c (xml_encode): If there is a defined source, don't + set it to "incoming", set it to whatever the source is! + (less_parts): Set the remove button insensitive if there is only 1 + criterion left. + (more_parts): Set the remove button sensitive (since we now have 2 + or more criterion). + (get_widget): If there is no name for the filter then set it to + "Untitled", highlight it, and grab the focus. If there is only 1 + criterion, disable the remove button. + + * filter-editor.c, vfolder-editor.c: GUI fixes here and there as + well as some consistancy fixes between them. + + * filter-driver.c (filter_driver_filter_mbox): Updated to send the + source url to filter_driver_filter_message() + (filter_driver_filter_folder): Updated to send the source url of + the folder to filter_driver_filter_message() + (filter_driver_filter_message): Now takes a source_url argument + that represents the url of the folder the message is coming from + (so that we may filter based upon that information). + +2000-10-23 Christopher James Lahey <clahey@helixcode.com> + + * filter.glade: Fixed these widgets to resize properly. + +2000-10-23 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-editor.c: Remove the "demand" source from the list. + + * filter.glade: Remove the "On Demand" option and replace it with + an "Outgoing" option. + +2000-10-23 Christopher James Lahey <clahey@helixcode.com> + + * filter-editor.c, filter-filter.c, filter-folder.c, + filter-part.c, filter-rule.c, rule-context.c, score-editor.c, + vfolder-editor.c: Fixed these widgets to resize properly. + +2000-10-20 Jeffrey Stedfast <fejj@helixcode.com> + + * Makefile.am: Added filter-url.[c,h]. + + * filter-message-search.c (get_source): New callback to get the + source url of the message being filtered. + (filter_message_search): Now takes a source argument. + + * filter-element.c (filter_element_new_type_name): Added code to + handle URL types. + + * filter-url.[c,h]: New filter object to handle URLs (ie in the + case of filtering on source url). FIXME: find a way to populate + the source combo box (including mail-config.h breaks the build in + the addressbook - how does including mail-tools.h not break the + build???) + + * filtertypes.xml: Added the source filter type and added the + move-to action. + + * filter-driver.c (do_move): New callback, a "Copy" action should + just copy the message to another location while a Move should both + copy the message to a new location and delete it from the source + location. + (do_delete): Set the deleted flag on the message info. + (filter_driver_filter_message): Now returns void as we don't care + if it was copied or not in the caller functions. Also check the + CamelMessageInfo being passed in - if the message has been marked + as deleted prior to being filtered, then return immediately as we + don't want to apply filter actions to deleted messages. + +2000-10-19 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_filter_folder): Start fetching at + 1, not 0. + +2000-10-11 Not Zed <NotZed@HelixCode.com> + + * filter-driver.c (filter_driver_filter_mbox): Report the + percentage of file complete for the filter. + +2000-10-10 Not Zed <NotZed@HelixCode.com> + + * filter-driver.c (filter_driver_run): Why on earth does this code + ref all these objects for? This is not right at all. + (filter_driver_run): Changed source type to a string. + (filter_driver_run): REmove the very weird exception copying + stuff - just ref it instead. + (do_score): + (do_colour): + (do_stop): + (do_copy): + (mark_forward): + (do_delete): Removed bogus 'terminated' testing. This is NOT + NEEDED HERE. It is tested after every rule/action, and + termination only makes sense at that point. + (filter_driver_filter_message): new funciton (renamed), filter + only a message. + (filter_driver_filter_mbox): Filter a whole mbox. + (filter_driver_run): If we aren't given an info, create a simple + one based on the message headers. + (filter_driver_filter_message): Renamed from filter_driver_run(). + (filter_driver_set_status_func): Set the status callback function. + (filter_driver_set_default_folder): Set the default folder for + filtering. + (report_status): Internal function to report the status of a given + event. + (do_copy): Removed a pointless cache lookup - duh, we do it in + open_folder anyway (infact, we do it in camel too!!). + (filter_driver_filter_message): Removed pointless re-refing of + arguments. Why would anyone think this could be any use at all? + (filter_driver_filter_folder): New function to filter a whole + folder. + + * filter-editor.c (rule_add): api fixes. + (rule_edit): + (rule_up): + (rule_down): + (set_sensitive): This didn't take into account the source, now it + does. + (select_source): Fix for api changes. Changed the rather generic + 'number' argument to be 'source', and a string. + (filter_editor_construct): Changed the 'number' to 'source', and + set the string appropriately. Added a warning for one case where + the glade file is out of sync. + + * score-editor.c (score_editor_construct): + (rule_edit): + (rule_delete): + (rule_up): + (rule_down): + (set_sensitive): api fixes. + + * vfolder-editor.c (set_sensitive): Api fixes. + (vfolder_editor_construct): + (rule_edit): + (vfolder_editor_construct): + + * rule-context.h (RCNextRuleFunc): Added a source argument. + + * rule-context.c (rule_context_next_rule): Added source argument. + (rule_context_find_rule): Added source argument. + (rule_context_get_rank_rule): Added source argument. + (rule_context_get_rank_rule_with_source): Removed. + (save): Fixed for changes to RCNextRuleFunc prototype. + + * filter-rule.h: Changed the source to be a string, removed the + filter_source_t type. + + * filter-rule.c (filter_rule_set_source): New function to set the + source of a rule. What idiot ran this code through indent? + (filter_rule_find_list): Added a source argument. + (filter_rule_next_list): Added a source argument. + (get_widget): Fixed the wording. You dont remove search parts, + you can only remove the last one. Why you even need to mention + they are search 'criteria' is beyond me. Whoever added the + scrolled window needs to be shot, its the single most awful GUI + feature ever invented (ranks with the close button next to + maximise). + (xml_encode): Save source as a string (if present). + (xml_decode): Likewise for loading & fixed a small memleak. + (filter_rule_finalise): Free source. + +2000-10-06 Not Zed <NotZed@HelixCode.com> + + * rule-context.c (load): Remove the stupid on-demand cb shit. + (rule_context_load): And here too. + +2000-09-27 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_run): Now takes an argument to + specify the log file (or NULL if logging is not to be performed). + +2000-09-19 Dan Winship <danw@helixcode.com> + + * Makefile.am (gladedir, filterdir): Use $(datadir), not + $(prefix)/share. + +2000-09-18 Jeffrey Stedfast <fejj@helixcode.com> + + * filtertypes.xml: Modified to use more intuitive naming + + * score-rule.c (xml_decode): Make sure the score is within our + range + (get_widget): Changed range to -3 to +3 + + * filter-score.c (get_widget): Changed range to -3 to +3 + (xml_decode): Make sure the score is within our range + + * filter-rule.c (get_widget): Rearranged widgets. + + * filter-filter.c (get_widget): Rearranged widgets. + + * filter-editor.c (filter_editor_construct): Updated to allow for + double-clicking on a rule to edit it. + +2000-09-18 Christopher James Lahey <clahey@helixcode.com> + + * filter-editor.c, filter-filter.c, filter-folder.c, + filter-input.c, filter-message-search.c, filter-option.c, + filter-rule.c, score-editor.c, vfolder-editor.c, vfolder-rule.c: + Fixed the #include lines to deal properly with gal. + +2000-09-13 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-message-search.c (body_contains): Modified to only match + text MIME parts in the message rather than the entire MIME message + (header_contains): Added regex matching + +2000-09-12 Dan Winship <danw@helixcode.com> + + * rule-context.c (d): + * filter-datespec.c (d): Turn off debugging output. + +2000-09-11 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c: We now use a "copied" variable to record + whether a message was marked as copied or not instead of trying to + "guess" by looking at the folders hash table as that won't work at + all anymore. + (do_copy): Renamed as this is more appropriate now that it + actually copies the message rather than marking it for copying + later. Also fixed a logic error which prevented a message from + being dumped into a folder if the fodler had been previously + opened. + +2000-09-11 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_run): No longer takes a + self_destruct argument. + +2000-09-11 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_run): Don't freeze/thaw the + default inbox here, let the caller freeze/thaw it. Don't destroy + the folders hash table here, it's faster if we wait till the + filter-driver is destroyed. + (filter_driver_finalise): Destroy the folders hash table here + (filter_driver_init): Initialize the folders hash table here + +2000-09-11 Jeffrey Stedfast <fejj@helixcode.com> + + * filtertypes.xml: Changed "Header" to be "Message header" so it's + not quite as confusing (??) + +2000-09-11 Jeffrey Stedfast <fejj@helixcode.com> + + * filtertypes.xml: Updated to allow the user to specify arbitrary + headers. + +2000-09-09 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_run): Fixed a logic error. Only + mark filtered as TRUE if it was successfully copied to another + folder, this means don't mark true if the default inbox is NULL. + +2000-09-09 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_run): Erm, okay I misunderstood + what camel_folder_[un]hook_event() did - we don't even need this + crap in the filter driver so lets take it completely out and let + the caller handle this junk. + +2000-09-09 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_run): Updated to not emit the + folder_changed signal when a message is appended to the default + mailbox - lets leave that up to the caller so we don't queue up a + bunch of these emits if the caller is downloading messages for + example. + +2000-09-08 Jeffrey Stedfast <fejj@helixcode.com> + + * filtertypes.xml: Added scoring xml stuffs + + * Makefile.am: added filter-score.[c,h] + + * filter-score.[c,h]: New functions to handle the "score" filter + type. + + * filter-element.c (filter_element_new_type_name): Added support + for "score" type. + + * filter-driver.c (do_score): New ESExp callback for filter + actions to set the score on a message. + + * filter-message-search.c (get_score): New ESExp callback for + getting the score tag as an integer value. + +2000-09-07 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_run): Now takes a + CamelMessageInfo argument in preparation for handling scoring + +2000-09-07 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_run): Modified to return a + boolean value specifying whether or not the message was filtered + into a folder other than the default. The default mailbox can now + also be specified as NULL if the message shouldn't be appended to + it in the case that it's not filtered into some other folder. + +2000-09-07 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_run): Rewrote - this shouldn't + need to be an async function + + * filter-message-search.c (match_all): Modified to look at the + boolean value being fed to it and just to return that instead of + always returning TRUE + +2000-09-07 Lauris Kaplinski <lauris@helixcode.com> + + * filter-editor.c, filter-filter.c, filter-folder.c, filter-option.c: + * filter-rule.c, score-editor.c, vfolder-editor.c, vfolder-rule.c: + More UTF-8 wrapping + +2000-09-06 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_run): Totally rewritten to filter + a single message at a time instead of filtering a folder. + + * filter-message-search.c (filter_message_search): New convenience + function for searching a message. + +2000-08-24 Lauris Kaplinski <lauris@helixcode.com> + + * filter-folder.c: Use e_utf8 wrappers + + * filter-input.c: Use e_utf8 wrappers + + * filter-rule.c: Use e_utf8 wrappers + +2000-08-23 Dan Winship <danw@helixcode.com> + + * filter-datespec.c (cal_day_selected): Set seltime.tm_isdst to + -1, not daylight, because the current dst value is not relevant to + the selected date. + +2000-08-18 Peter Williams <peterw@helixcode.com> + + * filter-driver.c (do_filter_mail): Unlink a new parameter, path_to_unlink, + if it is empty once the mail is filtered. Fixes a race in + mail_tool_filter_contents_into. + + * filter-driver.h: Update the prototype. + +2000-08-14 Ettore Perazzoli <ettore@helixcode.com> + + * vfolder-editor.c (rule_add): Add translation marks and use stock + buttons. + (rule_edit): Likewise. + + * score-editor.c (rule_add): Add translation marks and use stock + buttons. + (rule_edit): Likewise. + + * rule-context.c (rule_context_add_rule_gui): Add translation + marks and use stock buttons. + + * filter-part.c (main): Add translation marks and use + stock buttons. + + * filter-folder.c (button_clicked): Add translation marks and use + stock buttons. + + * filter-editor.c (rule_add): Add translation marks and use stock + buttons. + (rule_edit): Likewise. + + * filter-rule.c (get_widget): Add translation marks. + + * filter-filter.c (get_widget): Add translation marks. Add + padding to make it look like the buttons in `filter-rule.c'. + +2000-08-17 Peter Williams <peterw@helixcode.com> + + Implement filtering on demand. + + * rule-context.h: Add a new callback to rule_context_load + that allows the caller to hook on-demand rules into its UI. + + * rule-context.c (rule_context_load): Changed to pass the + extra parameters to load(). + (load): If the rule is successfully loaded, call the provided + callback so that the UI can be updated. + + * filter-editor.c (rule_add): Set the source of the new filter. + (rule_edit): Use the new rule_context_get_rank_rule_with_source() + so that we don't get a bad index into the GtkList. + (rule_delete): Same as above. + (rule_up): Same as above. + (rule_down): Same as above. + (select_source): New function. When the user changes the + dropdown list to select a new source type, repopulate the + list with rules of the appropriate type. + (filter_editor_construct): Code moved from here into + select_source(). Hook up all the elements of the source optionmenu + to callbacks to select_source(). + + * filter-rule.c (xml_encode): Save the rule's source type. + (xml_decode): Load it. Default to 'incoming' if unspecified. + + * filter-rule.h: New enumeration, _filter_source_t, the + specifies the rule's source. Add it to struct _FilterRule. + + * filter-driver.c (filter_driver_run): Add a new input, + sourcetype, that specifies which rules to run (only ones + with the same source will be run). struct filter_mail_input_t + changed to accomodate. + (do_filter_mail): Skip rules if they're not the specified source. + If source and dest are the same, don't delete the messages or + copy unnecessarily. + + * filter.glade: Make the optionmenu sensitive. Change "Outgoing" + to "On Demand" (outgoing should be added later). + +2000-08-15 Peter Williams <peterw@curious-george.helixcode.com> + + * vfoldertype.xml, filtertypes.xml: Add entries defining the + date-based message filtering and vfoldering. + + * filter-datespec.{c,h}: New files implementing the UI for + date-based filtering and vfoldering -- specifically, choosing + what to compare the message to. + + * filter-element,c: Hook up to create a datespec filter if + that's what's called for. + + * Makefile.am: Build the new -datespec files. + +2000-08-13 Dan Winship <danw@helixcode.com> + + * Makefile.am (EXTRA_DIST): remove blank.xpm and check.xpm which + no longer exist. Add filter.glade. + +2000-08-12 Dan Winship <danw@helixcode.com> + + * filter-driver.c (describe_filter_mail): Use + mail_tool_get_folder_name here too. (Hm... this directory really + shouldn't depend on stuff in mail/, but it already did. We'll have + to sort this out later.) + +2000-08-11 Dan Winship <danw@helixcode.com> + + * filter-driver.c (do_filter_mail): Remove an '#if 0' that must + have been left in accidentally, so that messages which are copied + to other folders will not also be copied into the Inbox. Also, + #ifdef out the line that printfs the rule, because the rules are + often very large. + +2000-08-11 Not Zed <NotZed@HelixCode.com> + + * filter-driver.c (do_colour): Use proper accessor function + instead of poking the structure. + +2000-08-10 Christopher James Lahey <clahey@helixcode.com> + + * filter-driver.c, filter-folder.c, rule-context.c, + vfolder-editor.c: Fixed some warnings. + +2000-08-10 Peter Williams <peterw@helixcode.com> + + * filter-driver.c (do_filter_mail): Fix the infinite fetchmail. + +2000-08-10 Not Zed <NotZed@HelixCode.com> + + * filter-driver.c (filter_driver_run): Save the results of + searches till we're done. So we dont have to go strduping strings + agian and again and again and again ... Remove all the unecessary + strdups. + (do_colour): Implement. + (filter_driver_run): Change for append api change. + (free_key): Removed. + +2000-08-09 Not Zed <NotZed@HelixCode.com> + + * rule-context.c (rule_context_add_rule_gui): Helper function to + add a rule, but present a gui first, asking for confirmation/allow + editing. + (rule_context_add_rule_gui): Keep track of context so it isn't freed under us. + + * filter-context.c (filter_context_create_action): Implement, + helper to aid filter generation. + +2000-08-08 Peter Williams <peterw@helixcode.com> + + * filter-driver.c (close_folder): Fix an accidental GTK unref + of a CamelObject. + +2000-08-03 Ettore Perazzoli <ettore@helixcode.com> + + * filter-folder.c (button_clicked): Use the base name of the + Evoluton URI for the button's label. + (get_widget): Likewise. + +2000-08-03 Peter Williams <peterw@helixcode.com> + + * filter-driver.c (op_filter_mail): Conform to the new mail-threads + interface. + +2000-08-01 Not Zed <NotZed@HelixCode.com> + + * vfolder-editor.c (rule_add): Oops, create a vfolder_rule when we + add a new one. + + * rule-context.c (load): If there are no user rules, dont bomb + out. + +2000-07-31 Not Zed <NotZed@HelixCode.com> + + * filter-input.c (filter_input_set_value): Set value of a simple + type to a new string. + + * filter-option.c (filter_option_set_current): New function to set + the current value of an option. + + * filter-rule.c (filter_rule_find_list): New function to find a + rule in a list, by name. + (filter_rule_set_name): Let you set the name of a rule. + + * rule-context.c (rule_context_find_rule): Find a rule by name. + (rule_context_create_part): Helper to find and clone a part by + name. + + * filter-folder.c (button_clicked): Fix warning. + + * filter.glade: Add new widgets for vfolder rule editor. + + * vfolder-context.c (vfolder_context_init): Changed to use vfolder + rule as the rule type. + + * vfolder-rule.c: New class to encode extra information required + for vfolder rules. + +2000-07-30 Not Zed <NotZed@HelixCode.com> + + ** Almost a total rewrite of every file, except for filter-driver + which just had minor updates. + + The rule format has changed. + +2000-07-24 Dan Winship <danw@helixcode.com> + + * filter-driver.c (do_delete, filter_driver_run): Update for + CamelFolder API changes. (delete_message and get_uids don't take + exceptions any more.) + +2000-07-21 Peter Williams <peterw@helixcode.com> + + * filter-driver.c (cleanup_filter_mail): Use the exception + provided to us by the async manager instead of allocating + our own; use mail_tool_camel_lock_{up,down} around camel + operations. + (filter_driver_run): Make it return void. + +2000-07-20 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c: Update to make "async". + +2000-07-11 Dan Winship <danw@helixcode.com> + + * filter-driver.c: Update for CamelFolder API changes + +2000-07-11 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c (filter_driver_run): Updated to reflect changes to + camel_folder_append_message () + +2000-07-09 Dan Winship <danw@helixcode.com> + + * filter-xml.[ch]: add a "string" type + + * filtertype.xml, vfoldertypes.xml: Use type="string" rather than + "folder" for subject/body matching. + + * filter-arg-types.c: Update some strings for "text" input. Fix + some warnings (including one that pointed out a real bug). + + * filter-arg.c, filter-druid.c, filter-format.c: fix warnings + +2000-07-07 Dan Winship <danw@helixcode.com> + + * filter-driver.c: Update for camel_folder_search_by_expression + change (GList -> GPtrArray). + + * vfoldertypes.xml: sync this to filtertypes.xml (to/cc thing) + +2000-07-05 Dan Winship <danw@helixcode.com> + + * remove some non-error case debugging messages. + + * filtertypes.xml: Fix typos and update the "to-address" rule to + match To or Cc. + * vfoldertypes.xml: Fix typos. + + * filter-driver.c (do_delete, do_copy, do_stop, + filter_driver_run): Add uids to the "processed" list only after + succesfully doing something with them. Fixes the problem where + copying a message to a folder that didn't exist would result in it + disapearing. + +2000-07-02 Ettore Perazzoli <ettore@helixcode.com> + + * filter-driver.c (filter_driver_new): Don't free the ruleset nor + the xmlDoc. This will make us leak [I think], but at least + filters work. + +2000-07-02 Dan Winship <danw@helixcode.com> + + * filter-driver.c (open_folder): freeze the folder to avoid + multiple folder_changed's + (close_folder): and thaw it. + +2000-07-02 Dan Winship <danw@helixcode.com> + + * filter-driver.c (filter_driver_new): kill + filter_driver_set_session and filter_driver_set_rules and instead + make filter_driver_new take the rules and a callback function it + can use to turn URIs into folders. + (open_folder): Use the callback function rather than calling camel + directly: some URIs need special handling to turn them into stores + and folders correctly, so let the mailer do that. + +2000-07-01 Ettore Perazzoli <ettore@helixcode.com> + + * filter-arg-types.c (arg_folder_edit_value): Only allow type + "mail" when selecting a folder for the filter. + +2000-07-01 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-driver.c: Updated to reflect changes made to + camel-folder. + +2000-06-30 Peter Williams <peterw@curious-george.helixcode.com> + + * filter-xml.c (filter_load_optionset_file): Check for failure + when loading the filter doc. + + * filter-driver.c (filter_driver_set_rules): Ditto. + + * filter-editor.c (filter_editor_set_rule_files): Ditto. + +2000-06-29 Ettore Perazzoli <ettore@helixcode.com> + + * filter-arg-types.c: Replaced `global_shell_interface' with + `global_shell_client'. + (arg_folder_edit_value): Use + `evolution_shell_client_user_select_folder()'. + (create_listener): Removed. + (impl_FolderSelectionListener_selected): Removed, together with + all the ::Listener stuff. + +2000-06-29 Arik Devens <arik@helixcode.com> + + * vfoldertypes.xml (ruleset type="match"): Changed Cc to CC to be + the same as the other CC rule. None of this works however, cause + the CC code is not hooked up to camel... oh well ;-( + +2000-06-29 Arik Devens <arik@helixcode.com> + + * vfoldertypes.xml (ruleset type="match"): Added a Cc rule to + vfolders. Works like To except on the Cc of a message ;-) + +2000-06-28 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-arg-types.c (arg_string_edit_value): Changed "Filter name" + to "Option value" as "Filter name" made no sense in the dialog + (arg_address_edit_value): Same + (arg_folder_edit_value): What do we want to return?? + +2000-06-27 Ettore Perazzoli <ettore@helixcode.com> + + * filter-xml.c (load_desc): Strdup content before assigning the + value. Also, no need to check for NULL when g_strdup()ing as + g_strdup() returns NULL for a NULL arg. + +2000-06-27 Ettore Perazzoli <ettore@helixcode.com> + + * Makefile.am (INCLUDES): `-I$(top_builddir)/shell' so that it + works with builddir != srcdir. [We need to #include + "Evolution.h".] + +2000-06-27 Michael Zucchi <zucchi@zedzone.mmc.com.au> + + * Makefile.am (INCLUDES): Add the shell dir for includes (for + corba interfaces). + + * filter-arg-types.c (impl_FolderSelectionListener_selected): + Listener for folder query. Sigh. + (create_listener): Create the listener object for the folder + dialogue query. Uses a global for linkage to the shell object, + via the mail component. + (arg_folder_edit_value): Call the folder selection dialogue to + edit the value, rather than a simple text widget. + +2000-06-26 Jeffrey Stedfast <fejj@helixcode.com> + + * filter-editor.c: Added a #include <gnome-xml/parser.h> as this + was needed (since we used the xml parser...) + (druid_dialogue_clicked): Do we want to use struct filter_option + or do we instead want to use struct filter_optionrule as we had before? + Since the function we pass the data to expects filter_option, I suspect + that that is what we want. + + * filter-format.h (filter_description_html_write): Renamed from + description_html_write in order to match function name in + filter-format.c + + * filter-druid.c (option_name_changed): Fixed a memory leak (Free'd + a filter description list). + + * filter-arg-types.c (arg_folder_edit_values): Free'd GList data in + argin->values. + + * filter-driver.c (filter_driver_set_rules): Added code to free an + xmlDoc and some other data. + + * filter-arg.h: Add prototypes for filter_arg_write_html() and + filter_arg_write_text(); + + * filter-arg-types.c: Lets see if we can't get rid of some of these + warnings... (use some casts to make warnings go away) + (arg_address_edit_value): Lets make sure that ad exists before looking + at member data. + +2000-06-16 Dan Winship <danw@helixcode.com> + + * filter-driver.c (do_delete, filter_driver_run): Update for Camel + flag handling changes. + +2000-06-15 Dan Winship <danw@helixcode.com> + + * filter-driver.c (open_folder, close_folder): Update for + CamelFolder changes. + +2000-06-09 Jacob Berkman <jacob@helixcode.com> + + * filter-editor.c (add_or_edit): use stock pixmap buttons + + * filter-druid.c (build_druid): remove the border on the notebook, + put the html widget in a scroll frame, and add some padding + +2000-06-06 Dan Winship <danw@helixcode.com> + + * filter-driver.c (open_folder): Update for folder + existence/creation changes. + +2000-06-02 Christopher James Lahey <clahey@helixcode.com> + + * filter-driver.c: Free the exception and the priv struct. + +2000-06-01 Christopher James Lahey <clahey@helixcode.com> + + * filter-arg-types.c (arg_address_edit_value): Search for ad in + arg->values instead of text since it's a list of + filter_arg_adresses. Also, free the old value in the list. + +2000-05-30 Not Zed <NotZed@HelixCode.com> + + * filtertypes.xml: And here too. + + * vfoldertypes.xml: Add body-contains and not-body-contains + types. + +2000-05-27 Not Zed <NotZed@HelixCode.com> + + * vfoldertypes.xml: New file - lists rules appropriate for + vfolders (no actions, etc). + + * Makefile.am (EXTRA_DIST): Add vfoldertypes.xml + + * filter-driver.c (filter_driver_expand_option): Made public from + expand_filter_option. + (filter_driver_rule_count): find out how many user rules are + defined. + (filter_driver_rule_get): Get a user rule by index. + +2000-05-21 Ettore Perazzoli <ettore@helixcode.com> + + * filter-druid.c: Don't pass an empty URL to `gtk_html_begin()' + anymore. + + * filter-arg-types.c: Updated for the new GtkHTML API which uses + `GtkHTMLStream *' instead of `GtkHTMLStreamHandle'. + * filter-arg.c: Likewise. + * filter-arg.h: Likewise. + * filter-druid.c: Likewise. + + * filter-format.c: Likewise. + * filter-format.h: Likewise. + +2000-05-18 Dan Winship <danw@helixcode.com> + + * filter-driver.c (filter_driver_run): update for + camel_folder_get_uids change + +2000-05-17 NotZed <NotZed@HelixCode.com> + + * filter-druid.c: Fix some html formatting. + +2000-05-16 NotZed <NotZed@HelixCode.com> + + * filter-driver.c (filter_driver_run): Delete all processed + messages. This is probably going to slow it down a bit. + (filter_driver_run): Close folders before destroying them *sigh*. + (open_folder): Actually open the folder. Doh. + + * filtertypes.xml: Initial filter rules. + + * filter-xml.c (filter_write_optionset): Save the description + also. + (write_description): Routine to save description - only saves 1 + node of description. + + * filter-arg.c (filter_arg_edit_clicked): Dont free edata here, + let the destroy do it(?) + + * filter-editor.c (main): Simple driver program for testing, so i + can fix all this really broken code *sigh* + +2000-05-15 NotZed <NotZed@HelixCode.com> + + * filter-editor.c (filter_editor_set_rule_files): filename based + interface. + (filter_editor_save_rules): Interface to save the options to a + filename. + + * filter-xml.[ch]: Bunch of cleanup. + + * filter-xml.c (filter_*_file): New interfaces to read/write files + directly, rather than messing with xmldoc crap. + + * Makefile.am: Removed filter-driver test program, now just part + of libfilter. + + * filter-driver.c: Made an object, with an api and everything, can + apply a filter to a given mailbox. + +2000-05-10 Christopher James Lahey <clahey@helixcode.com> + + * filter-arg.h: Changed tree.h to gnome-xml/tree.h. + + * Makefile.am: Added filter-arg-types.h, filter-arg.h, + filter-xml.h, filter-format.h, filter-druid.h, filter-editor.h. + +2000-05-02 Matt Loper <matt@helixcode.com> + + * Makefile.am: set G_LOG_DOMAIN. + +2000-05-01 NotZed <NotZed@HelixCode.com> + + * filter-driver.c (main): Fix for api. + +2000-04-30 Dan Winship <danw@helixcode.com> + + * filter-driver.c (start): Remove no-longer-necessary call to + camel_provider_register_as_module. + +2000-04-25 Ettore Perazzoli <ettore@helixcode.com> + + * Makefile.am (INCLUDES): Use `$(GTKHTML_CFLAGS)'. + +2000-04-20 NotZed <NotZed@HelixCode.com> + + * filter-driver.c: Removed a bunch of crappy unrequired headers. + + * Makefile.am (filter_driver_LDADD): Added libibex back again. + +2000-04-18 Dan Winship <danw@helixcode.com> + + * filter-driver.c: remove unused camel-log.h include + +2000-04-12 Matt Loper <matt@helixcode.com> + + * filter-arg.c (filter_arg_edit_value): Return a value. + +2000-03-27 NotZed <NotZed@HelixCode.com> + + * filter-xml.c (tokenise_xmlfreeprop): Free a prop after + tokenising it. + (find_node_attr): Free the prop after using it. + (load_desc): Ditto. I use free() because xmlFree() is nowhere to + be found. + (filter_load_optionset): Ditto. + + * filter-arg-types.c (arg_address_values_add_xml): free() xml + stuff, plugs a leak. + (arg_folder_values_add_xml): Ditto. + +2000-03-22 NotZed <NotZed@HelixCode.com> + + * filter-driver.c (main): Changed to use async search api. + +2000-03-04 NotZed <NotZed@HelixCode.com> + + * filter-druid.c (html_write_options): Output 'and' bits between + the rules. + + * filter-driver.c (main): Actually implement filtering, at least, + from Inbox. Copy messages to folder (in the same store only, so + far), delete, and stop processing are implemented, and the logic + to handle default processing. + + * filter-xml.c (load_optionvalue): Fix up a bug where we lost the + name of the arg (ouch). + * filter-xml.c: Wrapped printf's in debug macros. + +2000-03-02 NotZed <NotZed@HelixCode.com> + + * filter-druid.c (object_destroy): Disconnect the list signal, so + we dont get spurious emits during destroy. + (arg_changed): Callback to update filter arg asynchronously. + (arg_link_clicked): Edit the value non-modally. + + * filter-arg.c (filter_arg_edit_values_1): Changed to use + non-modal interface. + +2000-03-01 Ettore Perazzoli <ettore@helixcode.com> + + * Makefile.am: New file. + + * Makefile: Removed. I wonder why we are using plain Makefiles + instead of automake Makefiles at all. + +2000-02-29 NotZed <NotZed@HelixCode.com> + + * filter-driver.c (main): Remove gui code, this will be actual + filtering code. + + * Makefile: Added filter-editor to the library. + + * filter-editor.c (main): Comment out, make it a proper library. + +2000-02-28 NotZed <NotZed@HelixCode.com> + + * filter-druid.c: Removed unused header. + + * Makefile: Removed references to filter-sexp.[ch]. + + * filter-sexp.[ch]: Removed some unecessary includes. Moved to + e-util. Renamed callers. + +2000-02-24 NotZed <NotZed@HelixCode.com> + + * filter-xml.c (filter_description_free): + (filter_load_ruleset_free): + (filter_load_optionset_free): Functions for memory management. + + * filter-arg.c (filter_arg_copy): Copy the values of one arg into + another. + + * filter-editor.c: New widget, a dialogue which uses filter-druid + to present the various editing views. + (druid_dialogue_clicked): On finish, save the user's new filter + definition where it came from. + + * filter-druid.c: Changed to just being a notebook with no tabs, + rather than a full druid (no next/prev/etc buttons). + (option_name_changed): Update the option's description as the user + enters it in. + +2000-02-22 NotZed <NotZed@HelixCode.com> + + * filter-xml.c (filter_clone_optionrule): + (filter_clone_optionrule_free): + (filter_optionrule_new_from_rule): New utility functions for + working with the internal rule format. + + * filter-arg.[ch]: Added new callbacks for editing a single value, + and a new editor which shows all items in a list, and allows you + to edit them via the single-edit method. This needs some cleanup + for some unused/unusable virtual methods (edit_values, + write_html?). + + * Makefile: Add the druid for build. + + * filter-druid.c: A 'druid' widget for editing a single filter + rule. + +2000-02-21 Matt Loper <matt@helixcode.com> + + * .cvsignore: New file. + +2000-02-18 NotZed <NotZed@HelixCode.com> + + * blank/check.xpm: Added forgotten files. + + * Uh, more changes, lots, its still work in progress. + +2000-02-14 NotZed <notzed@helixcode.com> + + * Initial import. + |