diff options
Diffstat (limited to 'e-util')
-rw-r--r-- | e-util/ChangeLog | 2737 | ||||
-rw-r--r-- | e-util/ChangeLog.pre-1-4 | 2649 | ||||
-rw-r--r-- | e-util/Makefile.am | 7 | ||||
-rw-r--r-- | e-util/e-alert-dialog.c | 2 | ||||
-rw-r--r-- | e-util/e-bconf-map.c | 537 | ||||
-rw-r--r-- | e-util/e-bconf-map.h | 95 | ||||
-rw-r--r-- | e-util/e-charset.c | 10 | ||||
-rw-r--r-- | e-util/e-datetime-format.c | 11 | ||||
-rw-r--r-- | e-util/e-file-utils.c | 105 | ||||
-rw-r--r-- | e-util/e-file-utils.h | 3 | ||||
-rw-r--r-- | e-util/e-folder-map.c | 187 | ||||
-rw-r--r-- | e-util/e-import.c | 26 | ||||
-rw-r--r-- | e-util/e-import.h | 6 | ||||
-rw-r--r-- | e-util/e-logger.c | 4 | ||||
-rw-r--r-- | e-util/e-marshal.list | 8 | ||||
-rw-r--r-- | e-util/e-module.c | 4 | ||||
-rw-r--r-- | e-util/e-plugin-util.c | 7 | ||||
-rw-r--r-- | e-util/e-plugin.c | 4 | ||||
-rw-r--r-- | e-util/e-poolv.c | 146 | ||||
-rw-r--r-- | e-util/e-poolv.h (renamed from e-util/e-folder-map.h) | 27 | ||||
-rw-r--r-- | e-util/e-signature-utils.c | 28 | ||||
-rw-r--r-- | e-util/e-text-event-processor.c | 4 | ||||
-rw-r--r-- | e-util/e-unicode.c | 2 | ||||
-rw-r--r-- | e-util/e-util.c | 60 | ||||
-rw-r--r-- | e-util/e-util.h | 8 | ||||
-rw-r--r-- | e-util/e-win32-defaults.c | 253 | ||||
-rw-r--r-- | e-util/e-win32-defaults.h | 2 | ||||
-rw-r--r-- | e-util/gconf-bridge.c | 7 |
28 files changed, 524 insertions, 6415 deletions
diff --git a/e-util/ChangeLog b/e-util/ChangeLog deleted file mode 100644 index 77d035cccd..0000000000 --- a/e-util/ChangeLog +++ /dev/null @@ -1,2737 +0,0 @@ -2009-04-27 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #561188 - - * e-error.c: (e_error_newv): Do not localize already localized text. - Use default title for empty titles too, not only for NULL titles. - -2009-04-24 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #572348 - - * e-config.c: - * e-cursor.c: - * e-dialog-utils.c: - * e-dialog-widgets.h: - * e-dialog-widgets.c: - Remove deprecated Gtk+ symbols. - -2009-04-07 Tobias Mueller <tobiasmue@gnome.org> - - ** Fixes bug #577989 - - * conf-bridge.c (error_handler): - Call gtk_message_dialog_new with a proper format string ("%s") - -2009-02-13 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes part of bug #564229 - - * e-plugin-ui.c (plugin_ui_hook_class_init): - Initialize the EPluginUI registry during class initialization, - so that it's sure to be there when we need it. - -2009-01-15 Milan Crha <mcrha@redhat.com> - - * e-plugin.c: (epl_construct): Compiler warning fix. - -2009-01-11 Matthew Barnes <mbarnes@redhat.com> - - * e-error.c (ee_response): - Call e_display_help() instead of gnome_url_show(). - - * e-util.c (e_show_uri): - New convenience function calls gtk_show_uri() and displays an - error dialog if the URI cannot be shown. - -2009-01-10 Matthew Barnes <mbarnes@redhat.com> - - * e-dialog-utils.c: - Remove unneeded #include <libgnome/gnome-util.h>. - -2009-01-10 Matthew Barnes <mbarnes@redhat.com> - - * e-util.c (e_display_help): - Now that we require GTK+ 2.14, use gtk_show_uri() instead of - gnome_help_display(). - -2009-01-01 Matthew Barnes <mbarnes@redhat.com> - - * e-config.c (ec_rebuild): - Use the translated the EConfigItem label when building the UI. - -2008-12-22 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes bug #564860 - - * e-util-label.c (e_util_labels_parse): - Don't crash on malformed label strings. - -2008-12-10 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes part of bug #563250 - - * e-util.c (e_get_accels_filename): - New function returns the filename where custom keyboard - accelerators are stored. Currently only applies to the - various editor windows in Evolution. - -2008-12-10 Milan Crha <mcrha@redhat.com> - - ** Part of fix for bug #563870 - - * e-util-labels.h: (e_util_labels_get_filter_options): - * e-util-labels.c: (e_util_labels_get_filter_options): - New helper function to be used in FilterOption. - -2008-12-09 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #555663 - - * gconf-bridge.c: (struct WindowBinding), (gconf_bridge_bind_window), - (window_binding_unbind): Do not overwrite signal id. - -2008-12-05 Milan Crha <mcrha@redhat.com> - - ** Part of fix for bug #332629 - - * e-util.h: (e_util_get_category_filter_options): - * e-util.c: (e_util_get_category_filter_options): - New helper function to be used in FilterOption. - -2008-11-27 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #332729 - - * e-config.c: (ep_finalise): Disconnect handlers on the widget before - freeing the structure it is using. - -2008-11-12 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #559810 - - * e-util-labels.c: (e_util_labels_parse): - Do not localize empty label names, also localize them only first time. - -2008-11-04 Matthew Barnes <mbarnes@redhat.com> - - * e-non-intrusive-error-dialog.c: - * e-non-intrusive-error-dialog.h: - Fix compiler warnings. - -2008-11-04 Akhil Laddha <lakhil@novell.com> - - * e-non-intrusive-error-dialog.c (eni_query_tooltip_cb), - (eni_render_pixbuf), (eni_render_date), (eni_append_logs), - (eni_config_get_error_level), (eni_config_get_error_timeout), - (eni_error_timeout_changed), (eni_error_level_value_changed), - (eni_show_logger): - * e-non-intrusive-error-dialog.h: - Missed commiting these files in the previous commit. - -2008-11-03 Ashish Shrivastava <shashish@novell.com> - - ** Support for Non-intrusive error in calendar. - - * Makefile.am: Added new files: - * e-non-intrusive-error-dialog.c, e-non-intrusive-error-dialog.h: - -2008-11-02 Matthew Barnes <mbarnes@redhat.com> - - * e-util.c (do_format_number_as_float): - Remove this unused internal function. - -2008-10-30 Matthew Barnes <mbarnes@redhat.com> - - * e-icon-factory.c: - Only include the toplevel GTK+ header. - -2008-10-29 Sankar P <psankar@novell.com> - -License Changes - - * e-plugin-ui.c: - * e-plugin-ui.h: - -2008-10-06 Sankar P <psankar@novell.com> - - * widgets/table/e-cell-float.c: - * widgets/table/e-cell-float.h: - Remove obsolete function - -2008-10-01 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #554418 - - * e-util.h: (e_util_guess_mime_type): - * e-util.c: (e_util_guess_mime_type): Guess mime_type based on - the file content only when permitted by the caller, otherwise - check based on the filename only, where it fallbacks if file - content guess fails. - -2008-09-29 Sankar P <psankar@novell.com> - -License Changes - - * e-util.c: - * e-util.h: - * e-xml-utils.c: - -2008-09-26 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #535248 - - * e-logger.c: (flush_logfile), (logger_set_component), - (logger_finalize), (e_logger_log), (e_logger_get_logs): - Check if log file has been opened successfully before using it. - -2008-09-24 Sankar P <psankar@novell.com> - -License Changes - - * e-event.c: - -2008-09-16 Sankar P <psankar@novell.com> - -License Changes - - * e-error.c: - * e-icon-factory.c: - * e-plugin.c: - -2008-09-12 Sankar P <psankar@novell.com> - -License Changes - - * e-dialog-utils.c: - * e-sorter-array.c: - -2008-09-04 Sankar P <psankar@novell.com> - -License Changes - - * e-gui-utils.c: - * e-html-utils.c: - -2008-09-02 Sankar P <psankar@novell.com> - -License Changes - - * e-categories-config.c: - * e-config-listener.c: - * e-config-listener.h: - * e-config.c: - * e-corba-utils.c: - * e-corba-utils.h: - * e-cursor.c: - * e-dialog-utils.h: - * e-dialog-widgets.c: - * e-dialog-widgets.h: - * e-error.h: - * e-fsutils.h: - * e-gui-utils.h: - * e-html-utils.h: - * e-import.c: - * e-logger.h: - * e-menu.c: - * e-mktemp.c: - * e-mktemp.h: - * e-pilot-map.c: - * e-pilot-map.h: - * e-pilot-util.c: - * e-plugin.h: - * e-popup.c: - * e-profile-event.c: - * e-request.c: - * e-request.h: - * e-sorter-array.h: - * e-sorter.c: - * e-text-event-processor-emacs-like.c: - * e-text-event-processor.c: - * e-text-event-processor.h: - * e-util-labels.c: - * e-xml-utils.h: - -2008-08-27 Sankar P <psankar@novell.com> - -License Changes - - * e-bconf-map.c: - * e-bconf-map.h: - * e-bit-array.c: - * e-bit-array.h: - * e-categories-config.h: - * e-config.h: - * e-cursor.h: - * e-event.h: - * e-folder-map.c: - * e-folder-map.h: - * e-fsutils.c: - * e-icon-factory.h: - * e-import.h: - * e-logger.c: - * e-menu.h: - * e-pilot-util.h: - * e-popup.h: - * e-print.c: - * e-print.h: - * e-profile-event.h: - * e-signature-list.c: - * e-signature-list.h: - * e-signature.c: - * e-signature.h: - * e-sorter.h: - * e-text-event-processor-emacs-like.h: - * e-text-event-processor-types.h: - * e-util-labels.h: - * e-util-private.h: - * e-win32-reloc.c: - -2008-08-18 Bharath Acharya <abharath@novell.com> - - * e-icon-factory.c: (e_icon_factory_get_icon_filename), - (e_icon_factory_get_icon): Added a debug macro and turned it off. - -2008-08-16 Gilles Dartiguelongue <gdartigu@svn.gnome.org> - - * e-icon-factory.c: (e_icon_size_to_gtk_icon_size), - (e_icon_factory_get_icon_filename), (e_icon_factory_get_icon): - Make evolution respect GTK_ICON_SIZE changes, part of bug #416258. - -2008-08-14 Matthew Barnes <mbarnes@redhat.com> - - * e-util.c (e_display_help): - New convenience function for launching help from Evolution. - Displays an error dialog over the given parent window if an - error occurs. - -2008-08-13 Matthew Barnes <mbarnes@redhat.com> - - * e-gui-utils.c (e_create_image_widget): - Remove this unused function. - - * e-util.h: Cosmetic cleanups. - -2008-08-11 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes part of bug #546892 - - * e-gui-utils.c: - * e-popup.c: - Prefer gtk_image_new_from_icon_name() over e_icon_factory_get_image(). - - * e-icon-factory.c (e_icon_factory_get_image): - Kill this function. Use gtk_image_new_from_icon_name(). - - * e-icon-factory.c (e_icon_factory_get_icon_list): - Kill this function. Use gtk_window_set_icon_name(). - -2008-07-31 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes part of bug #545568 - - * e-plugin.c (ep_load): - Make sure system plugins are enabled on startup. - -2008-07-01 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes part of bug #540282 - - * e-print.c: - Store printer and page settings in a key file rather than GConf. - Also properly apply page settings to print operations, including - custom margins. - -2008-07-01 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #540972 - - * e-plugin.c: (ep_load): Small memory leak fix. - -2008-06-09 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #509595 - - * e-logger.c: (e_logger_get_logs): Do not crash if file does not - exists. Also be able to read lines more than 249 characters long. - -2008-06-08 Matthew Barnes <mbarnes@redhat.com> - - * e-logger.[ch]: Code cleanup. - -2008-06-06 Tor Lillqvist <tml@novell.com> - - * e-plugin.c (epl_loadmodule): Tell which plugin it could not load - in the warning message. - -2008-05-29 Frederic Crozat <fcrozat@mandriva.com> - - ** Fixes bug #535273 - - * Makefile.am: - Link e-util and econduit libraries with gnome-pilot. - -2008-05-22 Matthew Barnes <mbarnes@redhat.com> - - * e-plugin.c: - * e-plugin.h: - Code cleanup. Also add an "enabled" property to EPlugin. - -2008-05-19 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes bug #530392 - - * e-util-labels.c (e_util_labels_add_with_dlg): - Pressing Enter in the entry activates the default response. - -2008-05-16 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes part of bug #514383 - - * e-error.c (e_error_newv): Widget packing adjustments. - -2008-05-14 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes bug #531592 - - * e-error.c (ee_build_label): - Add an 'escape_args' parameter for strings that should /not/ be - escaped, such as window titles and status bar messages. - - * e-error.c (e_error_newv): - Pass an appropriate 'escape_args' value to ee_build_label(). - -2008-05-08 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes part of bug #525241 (EPluginUI) - - * Makefile.am: - Add e-plugin-ui.[ch]. - - * e-plugin.h (EPluginClass): - Add a "get_symbol" method for extracting arbitrary symbols - from an EPlugin. Implementation of the method is optional. - - * e-plugin.c (e_plugin_get_symbol): - New function invokes the new "get_symbol" EPlugin method. - - * e-plugin.c (epl_get_symbol): - New function implements the new "get_symbol" EPlugin method. - It extracts the given symbol name from the GModule. - - * e-plugin-ui.[ch]: - New EPluginHook subclass that allows plugins to extend menus, - toolbars, and popups that are managed by GtkUIManager instead - of BonoboUI. Should eventually replace EMenu/EPopup. - -2008-04-23 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #529254 - - * e-util.c: (e_write_file_uri): Save file properly. - Handle either URI or filename. Return success or failure, not gint. - -2008-04-22 Matthew Barnes <mbarnes@redhat.com> - - * Makefile.am: - Add gconf-bridge.[ch] from composer. - -2008-04-18 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes bug #528817 - - * e-plugin.c (e_plugin_register_type): - Fix a typo in the logic. This might explain why I occasionally - find Exchange Operations disabled on startup. - -2008-04-17 Milan Crha <mcrha@redhat.com> - - ** Part of fix for bug #526739 - - * e-gui-utils.c: Do not include gnome-vfs. - * e-util.c: (e_write_file_uri), (e_file_get_save_path): - * e-dialog-utils.c: (e_file_can_save), (e_file_check_local): - Use gio instead of gnome-vfs. - * e-util.h: - * e-util.c: (e_util_guess_mime_type), (e_util_filename_to_uri), - (e_util_uri_to_filename), (e_util_read_file): New helper functions. - -2008-04-12 Matthew Barnes <mbarnes@redhat.com> - - * e-util-labels.c (e_util_labels_add_with_dlg): - Clarify an error message. (#509672) - -2008-04-07 Takao Fujiwara <takao.fujiwara@sun.com> - - reviewed by: Milan Crha - - ** Fix for bug #408579 - - * e-util/e-system.error.xml: - Changed '"' to '\"' to work with intltool. - -2008-03-20 Sankar P <psankar@novell.com> - - * e-plugin.c: (ep_load): - Changed a stupid conditional statement, - in the previous commit. - -2008-03-19 Sankar P <psankar@novell.com> - - ** Fix for bug #496839 - - * e-plugin.c: (ep_load), (e_plugin_load_plugins), - (e_plugin_get_configure_widget): - * e-plugin.h: - - Implement Plugin Load Levels. You can decide - on which load-level you want your plugin to be loaded. - - Load Levels are mandatory if you need other language loaders - like Mono-Loader or Python-Loader. - - Introduce FLAGS as part of EPlugin. Futuristic. - -2008-03-17 Alex Rostovtsev <tetromino@gmail.com> - - ** Fix for bug #522631 - - * e-profile-event.c: Make 'e_profile_event_emit' non-static when - ENABLE_PROFILING is defined. - -2008-03-11 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes part of bug #513951 - - * e-mktemp.c (get_dir): - * e-util.c (get_lock_filename): - Use e_get_user_data_dir() instead of constructing the full path. - - * e-util.c (e_get_user_data_dir): - New function returns the base directory for Evolution user data. - This should be the /only/ place in the application where this - directory is hard-coded. - - * e-util.c (e_file_update_save_path), (e_file_get_save_path): - Emit warnings when saving to GConf fails. - -2008-02-19 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #209353 - - * e-text-event-processor-emacs-like.c: - (e_text_event_processor_emacs_like_event): - Allow paste text on mouse middle button click. - -2008-02-18 Milan Crha <mcrha@redhat.com> - - ** Part of fix for bug #515744 - - * e-config.c: (ep_finalise): Use proper member to free. - -2008-02-08 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes part of bug #509741 - - * e-error.c (e_error_newv): - If the error dialog has no primary text, fallback to the window - title for the "primary" data key. This is what gets displayed - in the status bar. - - * e-error.c (e_error_count_buttons): - New function counts buttons in a dialog's action area. - -2008-01-24 Tor Lillqvist <tml@novell.com> - - * e-icon-factory.c (e_icon_factory_init): Construct pathname under - EVOLUTION_DATADIR at run-time because EVOLUTION_DATADIR is a - function call on Windows. - -2008-01-11 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #488213 - - * e-icon-factory.h: (e_icon_factory_pixbuf_scale): - * e-icon-factory.c: (e_icon_factory_pixbuf_scale): - New global function for pixbuf scaling which speeds up scaling when - HAVE_LIBGNOMEUI_GNOME_THUMBNAIL_H. - * e-icon-factory.c: (load_icon): - Use global function e_icon_factory_pixbuf_scale for scaling pixbufs. - -2008-01-10 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #211353 - - * Makefile.am: - * e-util-labels.h: - * e-util-labels.c: New files to work with labels. - -2008-01-07 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #507363 - - * e-cursor.c: (e_cursor_set): - Also check if toplevel widget has non-NULL window property. - -2007-12-14 Milan Crha <mcrha@redhat.com> - - ** Part of fix for bug #211353 - - * e-popup.h: - * e-popup.c: (ep_build_tree): - Toggles can be in inconsistent state now, and can also contain - an image, which is a pointer to GtkImage widget. - -2007-12-17 Srinivasa Ragavan <sragavan@novell.com> - - * Makefile.am: Add e-logger.[ch] to compilation - * e-error.c: (e_error_newv): Add primary/secondary text to the error - dialog to the gobject as data. - * e-logger.[ch]: A new logger provision Evolution. - -2007-12-05 Srinivasa Ragavan <sragavan@novell.com> - - * e-util.h: Fix a compiler warning - -2007-12-05 Srinivasa Ragavan <sragavan@novell.com> - - * e-util.c: (get_lock_filename), (e_file_lock_create), - (e_file_lock_destroy), (e_file_lock_exists): Add utility functions for - startup-running lock create, check and delete. - * e-util.h: - -2007-12-04 Milan Crha <mcrha@redhat.com> - - ** Part of fix for bug #500210 - - * e-plugin.h: - * e-plugin.c: (e_plugin_configure), (e_plugin_is_configurable), - (epl_configure), (e_plugin_get_configure_widget), - (epl_get_configure_widget): Removed old configure functions, - replaced by get_configure_widget functions, to be able show - plugin configuration in a tab of plugin manager. - -2007-12-03 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes part of bug #392747 - - * e-utils.c (e_get_month_name), (e_get_weekday_name): - New functions cache localized month and weekday names (respectively) - for easier retrieval than resorting to strftime(). - -2007-11-13 Ondrej Jirman <megous@megous.com> - - ** Fix for bug #494320 - - * e-popup.c: (e_popup_create_menu): Add support for redefining - existing menu items. - -2007-11-05 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #492692 - - * e-util.c: (e_str_case_compare): Leak fix. - -2007-11-03 Matthew Barnes <mbarnes@redhat.com> - - ** Remove dead files from source control. The dates below - indicate when the file was removed from Makefile.am. - Fixes part of bug #478704. - - * e-categories-master-list-wombat.c (Jun 2005) - * e-categories-master-list-wombat.h (Jun 2005) - -2007-10-26 Sankar P <psankar@novell.com> - - ** Fix for bug #461272 - - * e-plugin.c: (ep_load), (e_plugin_load_plugins), - (e_plugin_is_configurable), (epl_configure): - * e-plugin.h: - Configure button should not be enabled for all. - -2007-10-26 Kjartan Maraas <kmaraas@gnome.org> - - * e-config.c: - * e-event.c: - * e-gui-utils.c: - * e-import.c: - * e-menu.c: - * e-mktemp.c: (get_dir): - * e-popup.c: - * e-profile-event.c: (e_profile_event_peek): - * e-util.c: (get_font_options): - * e-xml-utils.c: (e_xml_get_string_prop_by_name), - (e_xml_get_string_prop_by_name_with_default), - (e_xml_get_translated_string_prop_by_name): - - Warning fixes. - - NULL vs 0 - - ANSIfication of declarations - - missing include - -2007-10-12 Michael Monreal <michael.monreal@gmail.com> - - ** Migration of theme icons to data/icons/ (bug #479257) - - * file e-util/e-icon-factory.c: - Append a private icon directory to the search path. - -2007-10-11 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #311179 - - * e-error.c: (e_error_newv): Unset GTK_CAN_FOCUS on label to prevent - gaining focus by Tab, still can select and copy text by mouse. - -2007-10-09 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes part of bug #437579 - - * e-plugin.c: - * e-pilot-map.c: - * e-profile-event.c: - * e-signature.c: - Fix various compiler warnings. Patch from Milan Crha. - -2007-10-02 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes part of bug #469657 - - * e-config-listener.c: - Use destroy functions in GHashTables to simplify memory management. - -2007-09-27 Hiroyuki Ikezoe <poincare@ikezoe.net> - - ** Fix for bug #461195 - - * e-uril-marshal.list: Remove needless marshalers. - * e-text-event-processor.c: - * e-signature-list.c: Use GObject's marshalers. - -2007-09-10 Srinivasa Ragavan <sragavan@novell.com> - - ** Fix for bug #471791 - - * e-config-listener.c: Move away from g_asserts to g_crit* - (e_config_listener_get_boolean_with_default), - (e_config_listener_get_float_with_default), - (e_config_listener_get_long_with_default), - (e_config_listener_get_string_with_default): - * e-config.c: (e_config_construct), (ec_rebuild), - (e_config_create_widget), (e_config_target_new): - * e-dialog-widgets.c: (e_dialog_radio_get), - (e_dialog_option_menu_get), (e_dialog_get_values): - * e-event.c: (e_event_target_new): - * e-import.c: (e_import_target_new): - * e-menu.c: (e_menu_target_new): - * e-pilot-map.c: (map_sax_start_element), - (e_pilot_map_remove_by_pid), (e_pilot_map_lookup_uid): - * e-popup.c: (e_popup_target_new): - * e-util.c: (e_flexible_strtod), (e_ascii_dtostr): - -2007-09-07 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #473903 - - * e-print.c: (load_page_setup): - Fixes serious compiler warnings. - -2007-08-20 Milan Crha <mcrha@redhat.com> - - ** Fix for bug #367760 - - * e-dialog-utils.c: (e_file_get_save_filesel): - Don't escape characters of file name, suppose it has been already done. - -2007-08-18 Tobias Mueller <muelli@auftrags-killer.org> - - patch by: Tim Yamin <plasm@roo.me.uk> - reviewed by: Srinivasa Ragavan <sragavan@novell.com> - - * e-icon-factory.c: (load_icon): - Optimize pixbuf behaviour, fixes #465573 - -2007-08-07 Sankar P <psankar@novell.com> - - reviewed by: Srinivasa Ragavan <sragavan@novell.com> - - * e-plugin.c: (ep_load_pending): - Do not load pending hooks, - if the corresponding plugin is disabled. - Fixes #383684 - -2007-07-29 Hiroyuki Ikezoe <poincare@ikezoe.net> - - ** Fix for bug #451211. - - * e-event.c: (e_event_emit): Replase "==" with "!=" because g_assert() - occurs if expression is NOT true. - -2007-07-27 Lucky Wankhede <wlakke@novell.com> - - ** Fixes bug #451211 - - * e-event.c - Changed in (e_event_emit) - -2007-07-27 Hiroyuki Ikezoe <poincare@ikezoe.net> - - * e-util.h: Remove E_MAKE_TYPE macro. - - * e-text-event-processor.c: - * e-sorter.c: - * e-text-event-processor-emacs-like.c: - * e-sorter-array.c: - * e-bit-array.c: Use G_DEFINE_TYPE instead of E_MAKE_TYPE. - -2007-07-26 Sankar P <psankar@novell.com> - - * e-plugin.c: (e_plugin_configure), (epl_configure), - (epl_class_init): - * e-plugin.h: - Plugins should be configurable within the plugin-manager itself. - Fixes Preferences dialog bloating. - See bug #459522 - -2007-07-06 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes part of bug #446894 - - * e-print.c (load_page_setup): - Extract GtkPageSetup properties from a GtkPrintSettings object. - - * e-print.c (save_page_setup): - Merge GtkPageSetup properties into a GtkPrintSettings object. - - * e-print.[ch] (e_print_run_page_setup_dialog): - New function runs a preconfigured Page Setup dialog and saves - the configuration to GConf (/apps/evolution/shell/printing). - -2007-06-18 Srinivasa Ragavan <sragavan@novell.com> - - ** Fix for bug #448223 from Gilles Dartiguelongue - - * e-util.c: (e_str_without_underscores): - * e-util.h: - -2007-06-15 Srinivasa Ragavan <sragavan@novell.com> - - ** Fix for bug #446870 - - * e-gui-utils.c: (e_create_image_widget): Add this function back. It - is used in glade files. - * e-gui-utils.h: - -2007-06-02 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes bug #438467 (Patch from Gilles Dartiguelongue) - - * e-bconf-map.c: (e_bconf_hex_decode), (e_bconf_get_path), - (e_bconf_get_entry), (e_bconf_get_value), (build_xml), - (e_bconf_import_xml_blob), (e_bconf_import): - * e-config.c: (emph_construct_menu), (emph_construct): - * e-error.c: (ee_load): - * e-event.c: (emph_construct_item), (emph_construct): - * e-folder-map.c: (is_type_folder): - * e-html-utils.c: (url_extract), (email_address_extract), - (is_citation), (e_text_to_html_full): - * e-import.c: (emph_construct_importer), (emph_construct): - * e-menu.c: (emph_construct_menu), (emph_construct): - * e-pilot-map.c: (map_set_node_timet), (map_sax_start_element), - (map_write_foreach), (e_pilot_map_write): - * e-plugin.c: (ep_construct), (ep_load_plugin), (ep_load), - (ep_load_pending), (e_plugin_register_type), (e_plugin_xml_prop), - (e_plugin_xml_prop_domain), (e_plugin_xml_int), - (e_plugin_xml_content), (e_plugin_xml_content_domain), - (epl_construct), (e_plugin_hook_mask), (e_plugin_hook_id), - (epth_construct): - * e-popup.c: (emph_construct_menu), (emph_construct): - * e-signature.c: (xml_set_bool), (xml_set_prop), (xml_set_content), - (e_signature_uid_from_xml), (e_signature_set_from_xml), - (e_signature_to_xml): - * e-xml-utils.c: (e_xml_get_child_by_name_by_lang), - (e_xml_get_child_by_name_by_lang_list_with_score), - (e_xml_get_child_by_name_by_lang_list), - (e_xml_get_child_by_name_no_lang), - (e_xml_get_integer_prop_by_name_with_default), - (e_xml_set_integer_prop_by_name), - (e_xml_get_uint_prop_by_name_with_default), - (e_xml_set_uint_prop_by_name), - (e_xml_get_bool_prop_by_name_with_default), - (e_xml_set_bool_prop_by_name), - (e_xml_get_double_prop_by_name_with_default), - (e_xml_set_double_prop_by_name), - (e_xml_get_string_prop_by_name_with_default), - (e_xml_set_string_prop_by_name), - (e_xml_get_translated_string_prop_by_name): cast fixes and - compilation warning cleanups. - -2007-05-04 Milan Crha <mcrha@redhat.com> - - ** Fixes bug #432867 - - * e-util/e-util.c (e_write_file_uri) changed default - attribute for file from 0755 to 0644 - -2007-05-11 Srinivasa Ragavan <sragavan@novell.com> - - * e-icon-factory.c: (e_icon_factory_init): Add support for themable - application support icons. - -2007-04-20 Matthew Barnes <mbarnes@redhat.com> - - * e-print.c: - * e-print.h: - Refactor the printing infrastructure. (#426816) - -2007-04-19 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes part of bug #429422 - - * Makefile.am: - Remove e-gtk-utils.h and e-gtk-utils.c. - - * e-mktemp.c (get_dir): - Use g_mkdir_with_parents() instead of e_util_mkdir_hier(). - - * e-gui-utils.[ch]: - Remove e_create_image_widget() and e_button_new_with_stock_icon() - - * e-gui-utils.c (e_icon_for_mime_type): - Use GtkIconTheme instead of GnomeIconTheme. - - * eggtrayicon.c (gtk_status_icon_init): - Use g_object_ref_sink() instead of gtk_object_sink(). - - * e-sorter-array.c (esa_sort): - Use g_qsort_with_data() instead of e_sort(). - - * e-util.[ch]: - Some cosmetic cleanups. - Remove some unused or redundant symbols: - E_MAKE_X_TYPE - GET_STRING_ARRAY_FROM_ELLIPSIS - GET_DUPLICATED_STRING_ARRAY_FROM_ELLIPSIS - E_OBJECT_CLASS_ADD_SIGNALS - E_OBJECT_CLASS_TYPE - e_strdup_strip() - e_free_object_list() - e_free_object_slist() - e_free_string_list() - e_free_string_slist() - e_read_file() - e_write_file_mkstemp() - e_read_uri() - e_strsplit() - e_create_directory() - e_sort() - e_strdupv() - - * e-util.c (e_format_number), (e_format_number_as_float): - e_free_string_list() is dead; just do it manually. - - * e-icon-factory.c: - Use GtkIconTheme instead of GnomeIconTheme. - Use GStaticMutex instead of pthread_mutex_t. - Allocate icons with GSlice. - - * e-xml-utils.c: - Include missing header file(s). - - * e-dialog-widget.c: - Drop support for GnomePropertyBox; nothing uses it. - - * e-dialog-widget.c (e_dialog_dateedit_get): - Use gnome_date_edit_get_time() instead of gnome_date_edit_get_date(). - -2007-03-20 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes part of bug #419524 - - * Include <glib/gi18n.h> instead of <libgnome/gnome-i18n.h>. - - * e-util.c: Remove e_gettext(). - - * e-xml-utils.c (e_xml_get_child_by_name_by_lang_list): Use - g_get_language_names() instead of gnome_i18n_get_language_list(). - - * Makefile.am: Remove e-i18n.h. - -2007-03-01 Tor Lillqvist <tml@novell.com> - - * e-print.c (print_dialog_response) - (e_print_get_dialog_with_config): Bypass the body of these - functions on non-G_OS_UNIX for now as they use - gtk_print_unix_dialog_get_settings(). Gtk printing on Win32 needs - work. - -2007-02-27 Jeff Cai <jeff.cai@sun.com> - - * e-mktemp.c: (get_dir): - Use g_build_filename to get the tempoary directory name. - Fix #399307 - -2007-02-12 Srinivasa Ragavan <sragavan@novell.com> - - ** Print settings revamp from Matthew Barnes - - * e-print.c: (pack_settings), (unpack_settings), - (e_print_load_settings), (e_print_save_settings), - (print_dialog_response), (e_print_get_dialog): - * e-print.h: - -2007-01-27 Andre Klapper <a9016009@gmx.de> - - * e-html-utils.c: (e_text_to_html_full): - identify "sip:" URL's. Fixes bug #396543. - -2007-01-22 Srinivasa Ragavan <sragavan@novell.com> - - ** GtkPrint API migration from Ebby Wiselyn. - - * e-print.c: (e_print_load_config), (e_print_save_config), - (print_dialog_response), (e_print_get_dialog), - (e_print_get_dialog_with_config): - * e-print.h: - -2006-11-28 Daniel Gryniewicz <dang@gentoo.org> - - ** Fix for bug #349966 - - * e-dialog-utils.c: (save_ok), (filechooser_response), - (e_file_dialog_save), (save_folder_ok), (folderchooser_response), - (e_file_dialog_save_folder), (e_file_get_save_filesel), - (e_file_can_save), (e_file_check_local): - * e-dialog-utils.h: - * e-util.c: (e_file_update_save_path), (e_file_get_save_path): - * e-util.h: - -2006-11-20 Harish Krishnaswamy <kharish@novell.com> - - * e-icon-factory.c: (load_icon), (e_icon_factory_get_icon): - Remove unreachable code and fix the leak of basename. - -2006-09-18 Matthew Barnes <mbarnes@redhat.com> - - ** Fixes bug #352450 - - * e-cursor.c: - Replace deprecated GDK function call. - -2006-09-07 Tor Lillqvist <tml@novell.com> - - * Makefile.am (ruledir): Define ruledir here, too, like in - addressbook/gui/widgets/Makefile.am, as we use it in - SEARCH_RULE_DIR for the benefit of e-win32-reloc.c. Fixes the - Win32-specific problem "eab-widgets-WARNING **: Could not load - addressbook search; no parts". (#348419) - -2006-08-27 Srinivasa Ragavan <sragavan@novell.com> - - ** Fix for bug #352941 - - * e-util.c: (e_write_file_uri): Allow files to be overwritten. - -2006-08-24 Tor Lillqvist <tml@novell.com> - - * e-util.h: Include <cairo.h>, not <cairo/cairo.h>. - -2006-08-20 Srinivasa Ragavan <sragavan@novell.com> - - ** Fix for bug #349310. Patch from both Laurent Goujon - and Pavel Roskin. - - * e-util.h: Added function declaration for get_font_options. - -2006-08-17 Kjartan Maraas <kmaraas@gnome.org> - - * e-util.c: (get_font_options): Plug some leaks. - -2006-07-22 Harish Krishnaswamy <kharish@novell.com> - - * e-util.c: (get_font_options): Handle cases when the - props are undefined. This bug is currently causing Evo - to crash as soon as it comes up. - -2006-07-20 Rajeev ramanathan <rajeevramanathan_2004@yahoo.co.in> - - * e-util.[ch]: (get_font_options): Added code to get font options. - -2006-06-15 Tor Lillqvist <tml@novell.com> - - * e-plugin.c (ep_construct): On Win32, if the compile-time - localedir's prefix from the plugin's .eplug file matches - Evolution's compile-time prefix, replace it with the run-time - prefix (installation directory). - -2006-06-09 Chris Heath <chris@heathens.co.nz> - - * e-plugin.c (ep_construct): Fix memory leak. - Fixes bug #335423. - -2006-06-08 Gary Coady <garycoady@ubuntu.com> - - * e-i18n.h: Use the correct gettext domain for translations. - Fixes bug #333003. (Committed by Andre Klapper) - -2006-06-02 Tor Lillqvist <tml@novell.com> - - * e-util.c: Don't need the Win32-only fix_percent_l() after all, - this is taken care of in e_strftime(). (The check in e-d-s's - configure.in for the support of %l and %k has now been made more - reliable so it actually works also on Win32.) - -2006-06-02 Frederic Peters <fpeters@entrouvert.com> - - * e-error.c: Set new scroll member to false in static - declarations. Fixes build breaker #343446. - -2006-05-30 Srinivasa Ragavan <sragavan@novell.com> - - * e-error.c: (ee_load), (e_error_newv): Added a new property - called scroll, to show the messages in a scrolled view port. - -2006-05-25 Srinivasa Ragavan <sragavan@novell.com> - - * e-dialog-utils.c: (save_ok), (e_file_dialog_save), - (save_folder_ok), (e_file_dialog_save_folder): Added code - to enable file chooser to work with remote shares - * e-util.c: (e_write_file), (e_write_file_uri): Added - a new api to write to remote shares. - * e-util.h: - -2006-04-26 Li Yuan <li.yuan@sun.com> - - * e-text-event-processor-emacs-like.c: - (e_text_event_processor_emacs_like_event): - Handle SUN Type 6 keyboard's copy, paste and cut key. - Fix #271661. - -2006-03-27 Tor Lillqvist <tml@novell.com> - - * e-util.c (fix_percent_l): [Win32] Instead of %l (which is a GNU - extension not implemented in the Microsoft C library) use %I. - Fixes #336055. - (e_strftime_fix_am_pm): Call fix_percent_l() when necessary. - -2006-02-12 Karsten Bräckelmann <guenther@rudersport.de> - - * e-error.c (e_error_newv): - Removing unnecessary markup in translateable string. - Fixes part of bug #272789. - -2006-02-09 Harish Krishnaswamy <kharish@novell.com> - - * e-bconf-map.c: Upstreaming Olaf Hering's patch - to use signed chars. - -2006-02-08 Kjartan Maraas <kmaraas@gnome.org> - - * e-config.c: Use guint for 1-bit bitfield. - * e-icon-factory.c: (load_icon): Remove unused var - * e-import.c: (ep_init), (ep_finalise): Remove unused vars - * e-plugin.c: (e_plugin_register_type): Rename a var - * e-plugin.h: guint for 1-bit bitfield - * e-popup.c: (ep_finalise): Add comment. - * e-profile-event.c: Remove unused prototype - * e-text-event-processor-emacs-like.c: - (e_text_event_processor_emacs_like_event): Add comment about - a compiler warning from the Intel compiler. - -2006-02-07 Benjamin Berg <benjamin@sipsolutions.net> - * e-gui-utils.c: - * e-icon-factory.c: - accept SVGs for stock icons. Fixes bug 304417. - -2006-01-11 Harry Lu <harry.lu@sun.com> - - * e-marshal.list: removed. - -2006-01-11 Chenthill Palanisamy <pchenthill@novell.com> - - * e-menu.c: Fixes a build break. Replace the - libedataserver/e-util.h with libedataserver/e-data-server-util.h. - -2006-01-10 Simon Zheng <simon.zheng@sun.com> - - * e-mktemp.c (get_dir): - * e-plugin.c: - * e-util.[ch] (e_create_directory): - (e_sort): - Delete e_mkdir_hier(), and use e_util_mkdir_hier() - instead of it. - - Delete e_strstrcasea(), and use e_util_strstrcase() - instead of it. - - Delete e_strftime(), use the copy in evolution-data-server/ - libedataserver/e-data-server-util.c instead of it. - - Delete e_filename_make_safe(), and use the copy in - evolution-data-server/libedataserver/e-data-server-util.c - instead of it. - - Detelte e_utf8_strftime(), and use the copy in - evolution-data-server/libedataserver/e-data-server-util.c - instead of it. - -2006-01-06 Simon Zheng <simon.zheng@sun.com> - - * e-account.[ch], e-account-list.[ch]: removed. - Merged to evolution-data-server/libedataserver/. - * Makefile.am: remove above files from list. - -2006-01-05 Tor Lillqvist <tml@novell.com> - - * e-plugin.c (epl_construct) - * e-menu.c (emph_construct_menu): [Win32] The interface of - e_util_replace_prefix() changed a bit. - -2006-01-02 Tor Lillqvist <tml@novell.com> - - * e-menu.c (emph_construct_menu): Don't eventually free a return - value from xmlGetProp() with g_free(). g_strdup() it first, and - xmlFree() what xmlGetProp() returned. - - On Win32, replace a configure-time prefix of the ui file with the - run-time one. - -2005-12-19 Chenthill Palanisamy <pchenthill@novell.com> - - committing for David Trowbridge <trowbrds cs colorado edu> - - * e-dialog-widgets.[ch] (e_dialog_combo_box_set), - (e_dialog_combo_box_get): Added new functions to get/set - combox values. - -2005-12-18 Tor Lillqvist <tml@novell.com> - - * e-dialog-utils.c (e_file_dialog_save_folder): Silence unused - variable warning. - -2005-12-17 Tor Lillqvist <tml@novell.com> - - * Makefile.am (INCLUDES): Don't need EXTRA_GNOME_CFLAGS or - GNOME_FULL_CFLAGS. - - * e-error.c - * e-fsutils.c - * e-icon-factory.c - * e-mktemp.c - * e-plugin.c: Use GLib API where applicable for portability. - - * e-error.c - * e-folder-map.c - * e-pilot-map.c - * e-plugin.c: Use e_xml_parse_file() and e_xml_save_file() - instead of using libxml directly. - - * e-plugin.c: Add copyright header. - (epl_construct): [Win32 only:] Remap the plugin location from the - compile-time path to to a run-time path, to handle the common case - where the location in the .eplug file is in Evo's compile-time - prefix. Use libedataserver's e_util_get_prefix() and - e_util_replace_prefix(). We could alternatively use relative paths - in the .eplug files on Win32, like we do for .server files. - - * e-util-private.h (fsync) - * e-util.c: Don't bother with a Win32 implementation of fsync() as - the uses of fsync() in evo are pretty irrelevant. Just #define - fsync() away on Win32. - - * e-xml-utils.c (e_xml_get_child_by_name, e_xml_save_file): Remove - these functions that are now in libedataserver/e-xml-utils.c - - * eggtrayicon.c: For building on Win32 against GTK+ 2.8, include a - copy of the GtkStatusIcon code from GTK+ HEAD (i.e., what will be - GTK+ 2.10) and some helper functions from gdk/win32. Eventually - when GTK+ 2.10 is released and Evo no longer needs to support - older GTK+ versions, eggtrayicon.[ch] can be removed completely - from here, as the use of eggtrayicon in ../calendar/gui/ - alarm-notify/alarm-queue.c will automatically switch to using - GtkStatusIcon instead. - - * eggtrayicon.h: Ditto, for building on Win32 against GTK+ 2.8, - include a copy of gtkstatusicon.h from GTK+ HEAD. - -2005-12-12 Irene Huang <Irene.Huang@sun.com> - - reviewed by: Veerapuram Varadhan <vvaradhan@novell.com> - - * Makefile.am: Remove files that have an identical counterpart in - libedataserver, e-list.[c|h], e-list-iterator.[c|h], e-iconv.[c|h] - e-component-listener.[c|h], md5-utils.[c|h], e-time-utils.[c|h], - e-uid.[c|h]. Change md5-utils.h to e-html-utils.h in pilot-compile. - * e-component-listener.c: - * e-component-listener.h: - * e-iterator.c: - * e-iterator.h: - * e-time-utils.c: - * e-time-utils.h: - * e-iconv.c: - * e-iconv.h: - * e-uid.c: - * e-uid.h: - * md5-utils.c: - * md5-utils.h: - * e-list-iterator.h: - * e-list-iterator.c: - * e-list.h: - * e-list.c: - Removed - * e-account-list.h: - * e-account.c: - * e-signature-list.c: - * e-signature.c: - * e-signature-list.h: Change inclusion of <e-util/e-list.h> - to <libedataserver/e-list.h>. Change inclusion of "e-uid.h" and - "e-list.h" to <libedataserver/e-uid.h> and <libedataserver/e-list.h>. - -2005-12-09 Harish Krishnaswamy <kharish@novell.com> - - * e-util.[ch] (e_str_compare), (e_str_case_compare), - (e_collate_compare), (e_int_compare): prefix the wrapper - functions with e - do not use g lest it is assumed to - be a glib function. - -2005-11-26 Tor Lillqvist <tml@novell.com> - - * e-dialog-utils.c - * e-gtk-utils.c: Conditionalize X11 specific code on GDK_WINDOWING_X11. - - * e-menu.c (emph_construct_menu): Use g_get_tmp_dir() instead of - hardcoding /tmp. - - * e-util.c (e_strstrcase): Use g_ascii_strncasecmp() instead of - the deprecated g_strncasecmp(). What kinds of strings this - function is supposed to be used on (UTF-8 or some random single- - or multi-byte encoding) is anybody's guess. This function isn't - used in Evolution and should probably go away, though. And this is - one of the files that have a partially duplicated copy in - e-d-s/libedataserver, too, so doubly so. - (e_filename_make_safe): Mark more bytes as unsafe on Win32. Add - comments. This function is really under-specified and weird, one - wonders whether it really does what the author thought it should - do. - (fsync): Add Win32 implementation of fsync(). - - * e-xml-utils.c (e_xml_get_bool_prop_by_name_with_default): Use - g_ascii_strcasecmp() instead of the deprecated g_strcasecmp(), - especially as we are comparing to literal ASCII strings. - -2005-11-25 Tor Lillqvist <tml@novell.com> - - * e-util-private.h: Sort the stuff in the Win32 part for - clarity. Add some new run-time overrides for compile-time - paths. Include fcntl.h and define O_BINARY as zero if not defined - (on Unix). - - * e-win32-reloc.c: Sort here, too, and add the implementation for - the new run-time overrides. - - * Makefile.am: Ditto here. Link with INTLLIBS. - -2005-11-09 P. S. Chakravarthi <pchakravarthi@novell.com> - - Fixes #314638 - * e-categories-config.c (e_categories_config_get_icon_for): - added a g_object_unref to unref the GdkPixBuff object - created in this function. - -2005-10-18 Srinivasa Ragavan <sragavan@novell.com> - - * e-dialog-utils.c: (save_ok), (e_file_dialog_save), - (save_folder_ok), (folderchooser_response), - (e_file_dialog_save_folder): Shows the default file name in the - save file dialog. Added code to choose folder to save multiple - attachments - * e-dialog-utils.h: Added an additional parameter to e_file_dialog_save. - -2005-10-04 Devashish Sharma <sdevashish@novell.com> - - * e-util.c (g_str_case_compare): added a function for case insensitive - and locale sensitive UTF8 string compare. See #207110. - -2005-09-28 Tor Lillqvist <tml@novell.com> - - * e-html-utils.c (e_text_to_html_full): Use g_ascii_strncasecmp() - instead of strncasecmp(). We are comparing to literal ASCII - strings, just casefolding ASCII is enough. Also better for - portability. - - * e-profile-event.c (e_profile_event_target_new): Use - g_get_current_time() instead of gettimeofday() for portability. - -2005-08-23 Not Zed <NotZed@Ximian.com> - - * e-util.c (e_mkdir_hier): cast warning, good ol win32 patches. - (e_strftime): fix some clahey-code to use the right variable and - not try to modify const strings by stealth. - - * eggtrayicon.h: add missing prototype. - - * e-gui-utils.c (e_create_image_widget): remove unused pixbuf. - - * e-dialog-utils.c (dialog_realized): fix cast. - (e_dialog_set_transient_for_xid): same. - (e_file_dialog_save): fix cases for build. - - * e-categories-config.c - (e_categories_config_open_dialog_for_entry): cast & use right type - for text. - (icons_table[]): remove unused. - - * e-account-list.c (e_account_list_remove_account_proxies): cast - to fix warning. - -2005-08-18 David Malcolm <dmalcolm@redhat.com> - - * e-plugin.c (ep_set_enabled): Fix compiler warning on early bailout - -2005-08-18 Tor Lillqvist <tml@novell.com> - - * e-iconv.c (e_iconv_init): Use g_get_charset() on Win32 to get - locale charset. Free return value from g_win32_getlocale(). - -2005-08-10 Tor Lillqvist <tml@novell.com> - - * e-xml-utils.c (e_xml_get_child_by_name_by_lang): Use - g_win32_getlocale() to get locale on Win32. (setlocale() returns - strings like "Swedish_Finland.1252", we want the Unixish "sv_FI" - style.) Fix typo, use the lang parameter and not "lang" string - literal. - - * Makefile.am: Use privsolib instead of privlib. On Unix they are - the same, on Win32 privsolibdir is the same as libdir. - (INCLUDES): Pass also EVOLUTION_SYSCONFDIR, EVOLUTION_DATADIR, - EVOLUTION_LIBDIR, EVOLUTION_LIBEXECDIR and EVOLUTION_SOUNDDIR so - that the Win32 run-time path lookup code in e-win32-reloc.c can - handle them, too. - - * e-win32-reloc.c: Handle also the above, and the bare PREFIX. - - * e-util-private.h: Ditto here. (PREFIX, SYSCONFDIR, DATADIR and - LIBDIR without the EVOLUTION_ prefix, as that is how they are to - be used, cf. gnome-program.h.) Also EVOLUTION_ETSPECDIR. - -2005-07-11 Vivek Jain <jvivek@novell.com> - - * e-config.c: (e_config_target_changed): - added a idle handler that calls ec_rebuild after callback operations - are completed. - **Fixes #307794 - -2005-07-10 Shreyas Srinivasan - - * e-util/e-account.[ch]: Add structures to handle proxies. - * e-util/e-account-list.[ch]: Add functions to remove proxy - accounts and account's proxies. - -2005-07-06 Not Zed <NotZed@Ximian.com> - - * e-import.c (e_import_status): added callback for importers to - report status. - (e_import_cancel): added function for driver to abort an import. - (eih_cancel): implemented for hook. - -2005-07-05 Not Zed <NotZed@Ximian.com> - - * e-import.c: cleaned up/finished api. - -2005-06-18 Tor Lillqvist <tml@novell.com> - - * Makefile.am (WIN32_BOOTSTRAP_LIBS): Use bootstrap library for - libemisdwidgets. Code here uses e_utf8_to_locale_string() from - libemiscwidgets which hasn't been built yet if building from - scratch. - (INCLUDES) Remove GAL_IMAGESDIR, unused leftover. Add the - definitions of EVOLUTION_GLADEDIR, EVOLUTION_HELPDIR, - EVOLUTION_ETSPECDIR, SEARCH_RULE_DIR and EVOLUTION_GALVIEWSDIR - (for e-win32-reloc.c). Remove undefined GNOME_INCLUDEDIR. - (libeutil_la_LDFLAGS, libeconduit_la_LDFLAGS): Use NO_UNDEFINED. - (libeutil_la_LIBADD, libeconduit_la_LIBADD): Link with necessary - libs. - - * e-win32-reloc.c: Update now that it is here in evolution. Use _e - prefix instead of _gal. Add getters for more run-time paths. - - * e-util-private.h: Corresponding changes. - -2005-06-08 Srinivasa Ragavan <sragavan@novell.com> - * e-cursor.[ch]: Added functions to show busy cursor. - * Makefile.am: Add the files - -2005-05-25 Not Zed <NotZed@Ximian.com> - - * e-plugin-mono.[ch]: Removed, these are now implemented as a - plugin. - - * e-plugin.c (ep_load_plugin): separate out plugin xml loading - code from the loading loop. If a plugin type doesn't exist, then - save it in a list for later checking. - (ep_load): call above to do the work. - (e_plugin_register_type): check the pending doc list, if any - plugins now have a type, load them. - (e_plugin_type_hook_get_type): a plugin hook for registering new - plugin types ('loaders') at runtime. - -2005-05-19 Not Zed <NotZed@Ximian.com> - - * e-import.[ch]: Initial, and un-finished work on importer plugin - hooks. - -2005-05-16 Not Zed <NotZed@Ximian.com> - - * Makefile.am: added e-error.[ch], removed e-error-tool, and added - e-system.error.xml - -2005-05-13 Not Zed <NotZed@Ximian.com> - - * e-popup.c (emph_popup_factory): if we have a factory method - supplied, call that as well. More flexible popup building. - (emph_construct_menu): load factory def. - -2005-05-03 Not Zed <NotZed@Ximian.com> - - * e-profile-event.c (e_profile_event_emit): undefine - e_profile_event_emit if we are compiled without profiling. The - 'abi' is not, nor was ever changed. - - * e-profile-event.h: revert previous patch, the assumptions were - incorrect & the code misunderstood. - -2005-05-02 Rodney Dawes <dobey@novell.com> - - * e-profile-event.h (e_profile_event_emit): This method is a no-op if - we are building without ENABLE_PROFILE defined, so we don't need to - define a macro to no-op it, and change ABI at compile time - -2005-04-28 Not Zed <NotZed@Ximian.com> - - * e-profile-event.[ch]: A profiling plugin hook. - -2005-04-27 Mengjie Yu <meng-jie.yu@sun.com> - - * e-config.c: (e_config_create_window): - We should set the title of the window. - - Fixes #300477 - -2005-03-14 Not Zed <NotZed@Ximian.com> - - ** See bug #73550 (related for config pages) - - * e-config.c (ech_config_widget_factory): if we are disabled, then - noop. - (ech_config_factory, ech_commit, ech_abort): same. - -2005-03-01 Not Zed <NotZed@Ximian.com> - - * *.c: Remove/disable debug. - -2005-02-23 Hans Petter Jansson <hpj@novell.com> - - * Makefile.am (eutilinclude_HEADERS) - (libeutil_la_SOURCES): Remove e-passwords from here, it now - lives in libedataserverui. - - * e-passwords.[ch]: Removed. - -2005-02-10 Not Zed <NotZed@Ximian.com> - - ** See bug #61363 & mail/ChangeLog - - * e-config.c (ec_rebuild): work properly if the page factory - returns NULL, so the code can selectivly turn off pages. - (ec_druid_next, ec_druid_prev): skip non-created pages. - - * e-config.c (ec_rebuild): re-order notebook child properly. - Connect to destroy events so we update the widget-node widget - pointer properly for linked ui reconfigures. - -2005-02-17 Not Zed <NotZed@Ximian.com> - - * e-popup.c (ep_prune_tree, ep_build_tree, e_popup_create_menu): - completely rewritten. Simpler and more robust. - -2005-02-16 Not Zed <NotZed@Ximian.com> - - * e-popup.c (e_popup_create_menu): do the visibility mask test - before sorting. don't perform it on bar's or submenu's anymore, - calculate when not to show/create them. - -2005-02-14 Rodney Dawes <dobey@novell.com> - - * e-menu.c (emph_construct): If the plug-in is not enabled, do nothing - -2005-02-07 Not Zed <NotZed@Ximian.com> - - * e-popup.c (emph_construct_menu): - * e-menu.c (emph_construct_menu): - * e-config.c (emph_construct_menu): Don't let the 'id' field, - which identifies the target menu/whatever, to be NULL, otherwise - it gets added to all. - -2005-02-04 Rodney Dawes <dobey@novell.com> - - * e-passwords.c (ep_ask_password): Set the border widths for the - dialog containers to be HIG compliant - Fix the padding/spacing on the internal vbox to be HIG compliant - -2005-01-27 Mengjie Yu <meng-jie.yu@sun.com> - - * e-request.c: (e_request_string):add a11y description for the - entry. - -2005-01-26 Jeffrey Stedfast <fejj@novell.com> - - * e-config.c (ech_check): If the plugin isn't enabled, return TRUE - so that the suer doesn't get locked in one of the account druid - pages. - -2005-01-21 JP Rosevear <jpr@novell.com> - - Fixes #46404 - - * Makefile.am: build new files - - * e-print.[hc]: print related config and dialog routines - -2005-01-17 Rodrigo Moya <rodrigo@novell.com> - - * e-url.[ch]: - * Makefile.am: removed e-url.[ch], which are now in libedataserver. - -2005-01-08 Not Zed <NotZed@Ximian.com> - - * e-url.c (e_url_shroud): dont' use '%.*s' for truncating string - output. - -2005-01-09 JP Rosevear <jpr@novell.com> - - * e-url.c (e_uri_new): fix parsing of query string - -2005-01-07 Rodrigo Moya <rodrigo@novell.com> - - * e-categories-config.c (e_categories_config_open_dialog_for_entry): - set the dialog's parent. - -2005-01-07 Rodrigo Moya <rodrigo@novell.com> - - * e-categories-config.c (e_categories_config_open_dialog_for_entry): - use the new ECategoriesDialog in libedataserverui. - -2005-01-06 Rodney Dawes <dobey@novell.com> - - * e-config.c (e_config_create_window): Add the GTK_DIALOG_NOSEPARATOR - flag, and set appropriate border widths around the main dialog vbox, - and action area, to be more HIG compliant - -2005-01-06 JP Rosevear <jpr@novell.com> - - * e-error-tool.c (main): use the base name only, so if a full path - is passed to us we still write out to the current directory, for - when builddir != srcdir - -2005-01-04 Rodrigo Moya <rodrigo@novell.com> - - * e-categories-config.[ch]: removed most of the API. The rest will - be removed as the GAL dependencies are sorted out. - -2004-12-22 Not Zed <NotZed@Ximian.com> - - * e-plugin.c: include config.h. - -2004-12-17 Not Zed <NotZed@Ximian.com> - - * e-popup.c (e_popup_add_items): add a translation domain to api. - (e_popup_create_menu): translate the label using the supplied - domain. - (emph_popup_factory): pass domain to popup_add_items. - - * e-plugin.c (ep_construct): if we have a localedir set, then - bindtextdomain so gettext can find it. - -2004-12-21 JP Rosevear <jpr@novell.com> - - Fixes #30992 - - * e-config.c (e_config_create_window): use cancel rather than - close button - -2004-12-21 JP Rosevear <jpr@novell.com> - - * e-account.c: convert to G_DEFINE_TYPE - - * e-account-list.c: ditto - -2004-12-08 Not Zed <NotZed@Ximian.com> - - * e-plugin.c (e_plugin_load_plugins): kill warning if we can't - open the path. - -2004-12-06 Not Zed <NotZed@Ximian.com> - - * e-config.c (ec_rebuild): set the table spacings to 6 for - generated tables. - -2004-11-22 Not Zed <NotZed@Ximian.com> - - * e-config.c (ec_rebuild): if the table existed before and we have - no factory, destroy it always. - -2004-12-03 Not Zed <NotZed@Ximian.com> - - * e-config.c (ec_rebuild): revert the patch from chenthill, this - wont work yet. - -2004-11-29 Mengjie Yu <meng-jie.yu@sun.com> - - * e-config.c: (ec_rebuild):add mnemonic for label. - * e-passwords.c: (ep_ask_password):add description for password dialog. - -2004-11-26 JP Rosevear <jpr@novell.com> - - * e-gui-utils.c (e_create_image_widget): get the image directly - from the icon factory - - * e-config.c: insert debug defines so we can - turn spew on and off - - * e-event.c: insert debug defines so we can turn spew on and off - - * e-menu.c: insert debug defines so we can turn spew on and off - - * e-plugin.c: insert debug defines and set to off for now - - * e-popup.c: insert debug defines so we can turn spew on and off - (e_popup_create_menu): get the image directly from the icon - factory - -2004-11-26 JP Rosevear <jpr@novell.com> - - * e-icon-factory.h: add proto - - * e-icon-factory.c (e_icon_factory_init): cast to kill warning - (e_icon_factory_get_image): new function to return a GtkImage - widget give an icon name and size - -2004-11-25 Chenthill Palanisamy <pchenthill@novell.com> - - * e-config.c (ec_rebuild): Set the row and column spacings as - tweleve while creating the table to make it HIG compliant. - -2004-11-19 Not Zed <NotZed@Ximian.com> - - * e-plugin.c (ep_load): if the plugin fails to load just disable - it, don't unref it (it may be referenced elsewhere). - -2004-11-18 Not Zed <NotZed@Ximian.com> - - * e-plugin.c (epl_loadmodule): split out module loadng code. - (epl_construct): if we're enabled, and load-on-startup is set, - load the module right away. Not to be abused! - -2004-11-16 Not Zed <NotZed@Ximian.com> - - * e-host-utils.[ch]: removed, code moved into - camel-net-utils.[ch]. - -2004-11-15 Not Zed <NotZed@Ximian.com> - - * e-trie.[ch], e-memory.[ch], e-sexp.[ch], e-msgport.[ch]: Moved - to eds/libedataserver. - - * e-path.[ch]: removed & deleted. - -2004-11-03 Not Zed <NotZed@Ximian.com> - - * e-plugin.c (e_plugin_list_plugins): added helper api to list all - plugins. - (ep_construct): load authors into new list for them. - (e_plugin_register_type): setup disabled list. - (ep_construct): dont load the hooks if we're not enabled. - (e_plugin_enable): make this a virutal method. - (e_plugin_invoke): if we're disabled, noop. - -2004-11-01 Not Zed <NotZed@Ximian.com> - - ** See bug #68787 - - * e-account.c (xml_set_content): check the new val isn't null - before dereferencing it. - * e-account.c (xml_set_prop): same here. - -2004-10-28 Not Zed <NotZed@Ximian.com> - - * e-config.c (ec_rebuild): revert the last change. - -2004-10-28 Not Zed <NotZed@Ximian.com> - - * e-config.c (ec_rebuild): set the default row/col spacings of the - table. - -2004-10-20 Not Zed <NotZed@Ximian.com> - - * e-config.c (ec_rebuild): check for empty trailing sections/pages - after we exit the main loop. - - * e-plugin.c (e_plugin_get_type): make ~/.eplugins the default - eplugin location, not ~/.eplug. - -2004-10-18 Not Zed <NotZed@Ximian.com> - - * e-config.h: fix some forward decls. - -2004-10-19 JP Rosevear <jpr@novell.com> - - * e-config.c, e-event.c, e-menu.c, e-plugin.c, e-plugin.h, - e-popup.c: convert to org.gnome hook names - -2004-10-07 Jeffrey Stedfast <fejj@novell.com> - - * e-passwords.c (ep_ask_password): Use "%s" as the formatter - argument and msg->prompt as a printf-style argument rather than - using it as the format string. Fixes bug #67622. - -2004-10-12 Not Zed <NotZed@Ximian.com> - - * e-config.c (ech_check, ech_config_factory, emph_construct_menu): - setup a "check" handler, page-check/validation callback. - - * e-popup.c (e_popup_new): new method to create a targetless popup - menu. - -2004-10-08 JP Rosevear <jpr@novell.com> - - * e-plugin.c (ep_load): fix typo - -2004-10-08 Not Zed <NotZed@Ximian.com> - - * e-plugin.c (ep_load): handle wrong root element properly. From - David Trowbridge <David.Trowbridge@Colorado.edu> - -2004-10-07 Not Zed <NotZed@Ximian.com> - - * e-plugin.h: Fix the function pointer types! - - * e-plugin.c (epl_invoke): noop if we're disabled, and do some - lifecycle stuff now, call e_plugin_lib_enable on the module if it - exists. - -2004-10-07 Not Zed <NotZed@Ximian.com> - - * e-config.c (ec_rebuild): show the toplevel notebook if we - had to create one, always. - - * e-menu.c (e_menu_add_items): initialise node->menu properly. - - * e-plugin.c (ep_load): read/initialise a unique id for all - plugins and track them in a hashtable. - (ep_construct): refactor so we have more control over what - happens. if the hook handling class isn't registered yet, just - note it and keep going. - (e_plugin_hook_new): remove this, its handled internally by above. - -2004-10-06 Not Zed <NotZed@Ximian.com> - - * e-popup.c (e_popup_create_menu): only take one mask parameter, - and implement EPopupItem->enable to do what the other mask did. - (ep_activate): if this is a toggle or radiobutton, set the active - state on the item->type. - (e_popup_create_menu): if a menu image starts with gtk-, then - assume it is a gtk stock image instead. - -2004-08-27 Not Zed <NotZed@Ximian.com> - - * e-passwords.c (e_passwords_ask_password): return cancelled if - we're in an offline state. - -2004-08-26 Rodrigo Moya <rodrigo@novell.com> - - * eggtrayicon.[ch]: updated from libegg. - -2004-08-20 Frederic Crozat <fcrozat@mandrakesoft.com> - - * e-dialog-utils.c: (e_notice): - * e-passwords.c: (ep_ask_password): - Don't call gtk_dialog_set_has_separator on Gtk Message Dialog - with GTK+ >= 2.4.0. - -2004-08-13 Rodrigo Moya <rodrigo@novell.com> - - * e-categories-config.c: include gtkdialog.h rather than gnome-dialog.h. - -2004-08-12 Carlos Garnacho Parro <carlosg@gnome.org> - - * e-dialog-utils.c: Optionally use GtkFileChooser if compiled - against Gtk+ >= 2.4.0 - -2004-08-10 Not Zed <NotZed@Ximian.com> - - ** See bug #61840, and others. - - * e-passwords.c: Lots of changes. The api is now fully - multi-thread safe, all calls are serialised internally, even - recursive main-loop calls. Small api changes to the - ask_password call to add some new features required by the mailer - and to clean up some of the names. - (e_passwords_cancel): new procedure to cancel any outstanding - password requests, for when we need to go uninteractive. - -2004-08-09 Rodney Dawes <dobey@novell.com> - - * e-icon-factory.c (icon_foreach_remove): We must return TRUE here - so that things actually get removed from the list - -2004-08-07 ERDI Gergo <cactus@cactus.rulez.org> - - * e-account.h: Added new receipt_policy field to services - -2004-08-05 Rodrigo Moya <rodrigo@novell.com> - - * e-icon-factory.c (e_icon_factory_init): connect to "changed" - signal on the GnomeIconTheme object. - (icon_theme_changed_cb): g_hash_table_foreach_remove all items in the - hash table. - (icon_foreach_remove): callback for removing hash table items. - -2004-08-05 Rodrigo Moya <rodrigo@novell.com> - - Fixes #62030 - - * e-icon-factory.c (load_icon): get the icon_key as a new argument - and use that in the call to icon_new(). - (e_icon_factory_get_icon): pass icon_key to load_icon(). - (e_icon_factory_get_icon_list): ditto. - -2004-08-01 JP Rosevear <jpr@novell.com> - - * e-pilot-util.c (e_pilot_get_sync_source): find the source with - the pilot-sync property - (e_pilot_set_sync_source): give the source the pilot-sync property - and make sure its the only one - - * e-pilot-util.h: add prototypes - - * Makefile.am (eutilincludedir): don't build pilot settings - -2004-07-20 Not Zed <NotZed@Ximian.com> - - * e-dialog-utils.c: include config.h. See #61395. - -2004-07-12 Dan Winship <danw@novell.com> - - * e-mktemp.c (e_mktemp, e_mkdtemp): un-const the return values, - since they need to be freed - (d): turn off debugging - (expire_dir_rec): remove debug printfs - -2004-08-24 JP Rosevear <jpr@novell.com> - - * Makefile.am: define EVOLUTION_PLUGINDIR - - * e-plugin.c (e_plugin_get_type): add both a global and user - specifc eplug path as defaults - (e_plugin_load_plugins): just skip a directory if it can't be - opened - -2004-09-10 Not Zed <NotZed@Ximian.com> - - * e-popup.c (emph_construct_menu): duh, setup the hook pointer. - - * e-menu.c (e_menu_add_items): pass pixmaps and ui files to this - function now. - (e_menu_add_pixmap): removed, covered by above. - (e_menu_add_ui): removed, covered by above. - (emph_construct_menu): setup the hook pointer properly. - - * e-menu.h: moved the pixmap and ui file structures to be public, - removed hte hook equivalents. - -2004-09-09 Not Zed <NotZed@Ximian.com> - - * e-event.c (e_event_remove_items): implement a remove function. - (e_event_add_items): return a handle to pass to above. - (emph_event_handle): noop if we're disabled. - - * e-popup.c (emph_popup_factory): noop if the - plugin is disabled. - - * e-plugin.c (ep_init): setup an enabled bit for the plugin. - Preliminary work on being able to manage plugins. - (e_plugin_hook_enable): set hook enable state. - (e_plugin_enable): set plugin enable state. - -2004-09-07 Not Zed <NotZed@Ximian.com> - - * e-config.c (ec_rebuild): pass the right old widget to the page - factory. - (ec_widget_destroy): unref the config and the target when done. - (e_config_create_widget): force the notebook to page 0, workaround - some other bug i don't understand. - (e_config_create_window): set dialog hint on druid. - -2004-09-06 Not Zed <NotZed@Ximian.com> - - * e-account.c (e_account_import): emit a changed event on the dest. - (e_account_set_from_xml): emit a changed event if we were. - - * e-config.c (ec_rebuild): add a table item for some type-safety. - remove/alter the asserts so the code attemps to fail gracefully - rather than just fail. - -2004-09-01 Not Zed <NotZed@Ximian.com> - - * e-menu.[ch]: - * e-popup.[ch]: - * e-config.[ch]: - * e-event.[ch]: API syncrhonisation. Item callbacks now get the - root object, the item, and user-supplied data. Removed - now-redundant data and structures. Documentation updates. - -2004-08-30 Not Zed <NotZed@Ximian.com> - - * e-popup.c (emph_construct_item): just build a popupitem - directly, use user_data to pass the activate method name. - - * e-popup.h: removed epopuphookitem. - - * e-popup.c (emph_construct_item): dont set hook on hookitem - anymore, dont need to set user_data either. - - * e-popup.h: no longer pass parent pointer in EPopupHookItem, its - handled by add_items's data now. - - * e-popup.c (ep_finalise): re-arrange and call freefunc with the - new args. - (e_popup_create_menu): change the activate data so we can pass the - new api arguments. - (ep_activate): changes for api changes. - (emph_popup_factory): no longer takes target arg, taken from the - popup, pass the popuphook to the add_items call. - (emph_popup_activate): changed for new argument types. - - * e-popup.h: removed popup from epopupitem. - - * e-popup.c (e_popup_add_static_items): make private/rename to - ep_add_static_items. - (ep_add_static_items): dont pass target, it is set on the epopup - structure. - (e_popup_add_items): change the freefunc to be an EPopupItemsFunc - and add a user-data field, and track the parent epopup. - - * e-popup.h: change the activatefunc to pass the target and data - supplied to add_items. - -2004-08-25 Not Zed <NotZed@Ximian.com> - - * e-config.c (e_config_new): removed, this shouldn't be here for - an abstract class. - (*): Added doco. - -2004-08-24 Not Zed <NotZed@Ximian.com> - - * e-config.c (emph_construct_item): translate the label text. - - * e-popup.c (emph_construct_item): translate the label text. - - * e-plugin.c (e_plugin_xml_prop_domain): helper to get a property - translated. - (ep_construct): translate the name and description based on the - new domain tag. get the description as tag content not property. - (e_plugin_xml_content_domain): similar for xml node content. - -2004-08-24 Not Zed <NotZed@Ximian.com> - - * e-account.c (init): setup some defaults for the account. - - * e-config.c (e_config_create_widget): remove target arg actually. - (ec_rebuild): add druid page start/end pages. fixes. - (ec_druid_finish, ec_druid_cancel): handle finishing the druid. - -2004-08-23 Not Zed <NotZed@Ximian.com> - - * e-config.c (ec_druid_prepare, ec_druid_prev, ec_druid_next): - handle druid navigation. - -2004-08-20 Not Zed <NotZed@Ximian.com> - - * e-config.c (e_config_target_changed): add 'how' changed arg. - (e_config_create_widget): dont take target anymore, set that - separately. - (e_config_set_target): new virtual method to set the target. - (ec_set_target): implementation. - -2004-08-19 Not Zed <NotZed@Ximian.com> - - * e-account.c (e_account_set_bool): only emit changed if it did. - -2004-08-17 Not Zed <NotZed@Ximian.com> - - * e-config.c (e_config_page_check): fix a past-o. - (e_config_target_changed): treat the returned page for a druid - page factory as a gnomedruidpagestandard, so get_page works, etc. - -2004-08-16 Not Zed <NotZed@Ximian.com> - - * e-event.[ch]: Added event hook and dispatch router. - -2004-08-13 Not Zed <NotZed@Ximian.com> - - * e-plugin.c (e_plugin_load_plugins): don't take a path, load all - paths set. - (e_plugin_add_load_path): add a load path to the search path. - (e_plugin_get_type): setup the initial load path from environment - or defaults. - (e_plugin_xml_int): helper to get a prop in int format. - -2004-08-11 Not Zed <NotZed@Ximian.com> - - * e-config.c (e_config_target_changed): handle DRUID root type. - -2004-08-05 Not Zed <NotZed@Ximian.com> - - * e-account.c (class_init): add a changed signal. - (e_account_set_string, e_account_set_int, e_account_set_bool): - emit changed signal if it did. - - * e-config.c (e_config_add_page_check): add a page verification - function. It will be called for the given page, or all pages, to - verify the page contains valid data. - -2004-07-29 Not Zed <NotZed@Ximian.com> - - * e-account.c (e_account_get_string, e_account_get_int) - (e_account_get_bool, e_account_set_string, e_account_set_int) - (e_account_set_bool): implement. completely table driven. - -2004-07-02 Chris Toshok <toshok@ximian.com> - - [ fixes #60691 ] - - * e-iterator.h: rename the "delete" member to - "remove", to fix c++ build. - - * e-iterator.c (e_iterator_delete): same. - (e_iterator_class_init): same. - - * e-list-iterator.c (e_list_iterator_class_init): same. - (e_list_iterator_remove): same. - -2004-06-03 Dan Winship <danw@novell.com> - - * e-icon-factory.c (load_icon): If the icon_name is an abolute - path, just load it. - (e_icon_factory_get_icon): Update the docs to reflect that - -2004-06-01 Not Zed <NotZed@Ximian.com> - - * e-fsutils.c (e_fsutils_avail): use statvfs if available. Should - make it actually work, if not portable. This is for a bug but I - can't recall the number. - -2004-05-27 Rodney Dawes <dobey@novell.com> - - * Makefile.am (dist-hook): Require e-error-tool - -2004-05-19 Jeffrey Stedfast <fejj@novell.com> - - * e-icon-factory.c: Lots of re-working action. We no longer load a - pixbuf for each and every available size when requesting the icon - for the first time, instead we simply load the requested icon of - the requested size and cache only that. - (e_icon_factory_get_icon): Always return a broken image icon if we - fail to load the requested icon. - (e_icon_factory_get_icon_list): Only bother with adding icons of - the sizes that are suggested by ghe gtk documentation for - gtk_window_set_icon_list rather than the sizes of the standard - icons (since it isn't the same list of sizes). - (load_icon): Fall back to EVOLUTION_ICONSDIR/WWxHH/icon_name if - the icon-theme lookup fails. Also now takes a 'scale' argument - which, if non-zero, allows us to look for images of the same name - with a larger size in order to scale them back down to what we - need. - -2004-05-19 Jeffrey Stedfast <fejj@novell.com> - - * e-gui-utils.c (e_icon_for_mime_type): We always have - GnomeIconTheme nowadays, get rid of the old unused code. - (e_create_image_widget): Use E_ICON_SIZE_DIALOG - -2004-05-17 Jeffrey Stedfast <fejj@novell.com> - - * e-icon-factory.h (E_ICON_SIZE_LIST/STATUS): New #define aliases - for common icon usage cases where it may not be obvious that they - are the same size as menu icons. - -2004-05-12 Jeffrey Stedfast <fejj@novell.com> - - * e-icon-factory.c (e_icon_factory_shutdown): New function to - clean up the cached icons. - -2004-05-12 Not Zed <NotZed@Ximian.com> - - * e-error-tool.c: Tool to do i18n string extraction for error xml - files. - -2004-05-10 Not Zed <NotZed@Ximian.com> - - * e-fsutils.c (e_fsutils_usage): new file/function, get disk usage - of a path, in 1024 byte blocks. - (e_fsutils_avail): new file/function, get disk space available for - a given path, in 1024 byte blocks. - - * e-meta.[ch]: Removed. Poor idea badly executed, and no longer used. - - * e-path.h: add a fixme about deprecation. - -2004-04-30 Not Zed <NotZed@Ximian.com> - - * e-lang-utils.[ch]: Removed. This is covered by - gnome_i18n_get_language_list, which is more complete. - -2004-04-30 Dan Winship <danw@ximian.com> - - * e-icon-factory.c (load_icon): Make this work for non-stock icons - too. - -2004-04-22 Not Zed <NotZed@Ximian.com> - - * e-icon-factory.c (e_icon_factory_get_icon_list): make sure we - unlock if we fail to find an icon. - -2004-04-21 Jeffrey Stedfast <fejj@ximian.com> - - * e-icon-factory.c: Remove the warnings about using E_ICON_SIZE - enums. - -2004-04-20 Jeffrey Stedfast <fejj@ximian.com> - - * e-icon-factory.c (e_icon_factory_get_icon): Make - thread-safe. Fixes a crash I encountered this morning. - (e_icon_factory_get_icon_filename): Same. - (e_icon_factory_get_icon_list): Here too. - -2004-04-19 Jeffrey Stedfast <fejj@ximian.com> - - * e-icon-factory.h: Add an enum for icon sizes (temporarily has - absolute pixel sizes assigned to it until I commit - e-icon-factory.c changes - but only after all other code has been - updated to use the enums). - -2004-04-16 Michael Terry <mike@mterry.name> - - * Makefile.am: Add e-icon-factory.[ch] - * e-gui-utils.c: Use the icon theme via EIconFactory - * e-icon-factory.[ch]: Move EIconFactory to e-util, and add icon theme - support to the object so evolution uses them - -2004-04-13 Jeffrey Stedfast <fejj@ximian.com> - - * e-signature-list.c (gconf_signatures_changed): Don't add an - autogen signature if the new signature is the autogen signature. - -2004-04-13 Jeffrey Stedfast <fejj@ximian.com> - - * e-host-utils.c (e_gethostbyname_r): Implemented a similar - workaround to the one I did for a gethostbyaddr_r() glibc bug - here. Glibc will apparently return success for addresses such as - "192..168.1.1" (note the double dot) and yet not have filled in - the hostent properly. - -2004-04-12 Jeffrey Stedfast <fejj@ximian.com> - - Really fixes bug #56623 - - * e-signature-list.c (gconf_signatures_changed): If we've had to - "fix" any signatures by adding a uid, set the resave state on the - list (only cared about if this is at initial load time). - (e_signature_list_construct): If we've set any uids in - signatures_changed(), then save the signature list back out. - -2004-04-09 Jeffrey Stedfast <fejj@ximian.com> - - * e-account.c (xml_set_identity): If we fail to set a sig_uid then - try to extract the old style signature id and assume the migration - code will fix us up (if not, nothing bad will happen anyway). - - * e-signature-list.c (gconf_signatures_changed): If the autogen - signature isn't in the list (or isn't the first in the list), add - it to the head of the list. - -2004-04-07 Jeffrey Stedfast <fejj@ximian.com> - - Probably fixes bug #56623 and others? - - * e-signature-list.c (gconf_signatures_changed): Fixed to not use - free'd iter memory. Also reverse the new_sigs list before adding - them to the signature list (so they are in the same order they - appeared in the gconf key). - -2004-04-05 Jeffrey Stedfast <fejj@ximian.com> - - * e-signature-list.c (gconf_signatures_changed): Fixed to not - ignore signatures without uids (e.g. signatures that were from - prior versions). - -2004-04-02 Jeffrey Stedfast <fejj@ximian.com> - - * e-signature.c (e_signature_to_xml): Always set a format prop so - that 1.4 and older 1.5 versions won't strcmp() on a NULL value. - -2004-04-01 Jeffrey Stedfast <fejj@ximian.com> - - * e-account.c: Reference signatures by their UID rather than by an - integer id. Also removed the need to have 2 signature settings (no - need for the "auto" signature boolean anymore). - -2004-03-31 Jeffrey Stedfast <fejj@ximian.com> - - * e-signature.[c,h]: New class similar to EAccount but for - signatures. - - * e-signature-list.[c,h]: New class similar to EAccountList only - for signatures. - -2004-03-31 Not Zed <NotZed@Ximian.com> - - * e-account-list.h: similar to below. - - * e-account.h: define struct _EAccount* so you can properly forward - declare it. - -2004-03-18 Not Zed <NotZed@Ximian.com> - - * e-account.c: Added options for transport_url and source_url - permissions. - -2004-03-18 Not Zed <NotZed@Ximian.com> - - * e-account.c (e_account_writable, e_account_writable_option): - added interface to find out if various fields or server options - are writable. to work around gconf limitations. - -2004-03-04 William Jon McCann <mccann@jhu.edu> - - * e-dialog-utils.c (e_notice, e_notice_with_xid, save_ok): - * e-request.c (e_request_string): - * e-passwords.c (e_passwords_ask_password): - Remove separator from dialogs per HIG. - -2004-03-04 Not Zed <NotZed@Ximian.com> - - * e-sexp.c: Added some debug stuff. - -2004-02-27 Not Zed <NotZed@Ximian.com> - - ** See Bug #37329. - - * e-mktemp.c (get_dir): setup a comjpile time option for storing - in the homedir, and also just use the uid as the key for a /tmp - dir option. - (e_mktemp_cleanup): removed entirely. - (e_mkstemp, e_mkdtemp, e_mktemp): dont save the file/dirname in a - list anymore. - (expire_dir_rec): expire old temp data from previous runs/old data - lying around. Based on access time. - (get_dir): run an expirey every now and then. - -2004-02-25 Jeffrey Stedfast <fejj@ximian.com> - - * e-gui-utils.c (e_icon_for_mime_type): Protect against feeding - gdk_pixbuf_new_from_file() a NULL path. Clears up some console - warning spewage. - -2004-02-19 Not Zed <NotZed@Ximian.com> - - * e-pilot-util.c: include string.h, fixes 64 bit crash. From - David Mosberger. - -2004-02-03 Chris Toshok <toshok@ximian.com> - - * e-html-utils.c (e_text_to_html_full): add callto:, h323:, and - webcal: schemes. - -2004-01-26 JP Rosevear <jpr@ximian.com> - - * e-folder-map.c (e_folder_map_dir): use g_file_test instead of - stat and pass the type e_folder_map_dir when recursing - -2004-01-24 JP Rosevear <jpr@ximian.com> - - * e-folder-map.c: turn off debugging - -2004-01-24 Chris Toshok <toshok@ximian.com> - - * e-folder-map.c (e_folder_map_dir): use GDir/g_build_filename, - and g_file_test. - (e_folder_map_local_folders): same. - -2004-01-23 JP Rosevear <jpr@ximian.com> - - * Makefile.am: build new sources - - * e-folder-map.[hc]: builds a list of 1.4 folder paths of a - certain type - -2004-01-20 JP Rosevear <jpr@ximian.com> - - * Makefile.am: don't build dead files - - * e-xml-hash-utils.[hc]: kill, these were moved to e-d-s long ago - -2004-01-14 Jeffrey Stedfast <fejj@ximian.com> - - * e-bconf-map.[c,h]: New source files for mapping bonobo-conf keys - to gconf keys. Moved out of shell/e-config-upgrade.c - -2004-01-13 Not Zed <NotZed@Ximian.com> - - * e-msgport.c (em_cache*): A time-based thread-safe in-memory - cache thing. Called em_cache 'cause there's an e_cache in gal. - -2004-01-05 Not Zed <NotZed@Ximian.com> - - * e-memory.c (e_mempool_destroy): Fix from Zan Lynx - <zlynx@acm.org> to lock the memchunk before freeing the pool - header. - -2003-12-06 JP Rosevear <jpr@ximian.com> - - * Makefile.am: Remove hard coded disable deprecated flags - -2003-11-23 JP Rosevear <jpr@ximian.com> - - * Makefile.am (INCLUDES): remove gtk deprecated flag - -2003-11-18 JP Rosevear <jpr@ximian.com> - - * Makefile.am: remove db3 library, if you really want it, get it - from e-d-s - -2003-11-14 JP Rosevear <jpr@ximian.com> - - * Makefile.am: don't build the e-source stuff anymore, its in - e-d-s now - -2003-11-14 JP Rosevear <jpr@ximian.com> - - * test-source-list.c (on_idle_do_stuff): we only need the uid to - remove and peek at stuff - - * e-source-list.h: update proto types - - * e-source-list.c (e_source_list_peek_source_by_uid): allow peek - by uid only - (e_source_list_remove_source_by_uid): allow removal by uid only - -2003-11-07 Dan Winship <danw@ximian.com> - - * ename/*: Removed. No longer used by evolution except via - evolution-data-server. - - * Makefile.am (SUBDIRS): Remove ename - -2003-11-07 JP Rosevear <jpr@ximian.com> - - * Makefile.am: remove build sources from dist - -2003-11-07 JP Rosevear <jpr@ximian.com> - - * Makefile.am: make sure the marshal header and source are in the - source list - -2003-10-31 Hans Petter Jansson <hpj@ximian.com> - - * e-source.c (e_source_get_uri): Don't compress trailing slashes in - URI elements. - -2003-10-31 Not Zed <NotZed@Ximian.com> - - * e-account.c (e_account_(sg)et_from_xml): add encrypt_key id, and - change some of the names around to be more meaningful. - -2003-10-17 Jeffrey Stedfast <fejj@ximian.com> - - * e-host-utils.c (e_gethostbyname_r): If the system defines - AI_ADDRCONFIG, set this flag on the hints.ai_flags member as well - so that we don't resolve a host to an IPv6 addr when the node - doesn't have any IPv6 source addresses. - -2003-10-24 Dan Winship <danw@ximian.com> - - * Makefile.am (libedb3util_la_LIBADD): add $(DB3_LDADD) - -2003-10-22 Dan Winship <danw@ximian.com> - - * e-bonobo-factory-util.[ch]: Gone; unused since 1.2 - - * e-proxy.[ch]: Gone; nothing in evo uses soup any more. - - * Makefile.am (eutilinclude_HEADERS, libeutil_la_SOURCES): Remove - e-proxy.[ch] - -2003-10-20 Ettore Perazzoli <ettore@ximian.com> - - * Makefile.am (pilot_compile) [! ENABLE_PILOT_CONDUITS]: Add - md5-utils.c so it compiles even if you have no Pilot support. - -2003-10-16 Rodrigo Moya <rodrigo@ximian.com> - - * e-source-list.c (e_source_list_sync): use gconf_client_notify_remove - instead of g_source_remove for GConf notification IDs. - (impl_finalize): remove the GConf notification also here. - -2003-10-13 Rodrigo Moya <rodrigo@ximian.com> - - * e-source-group.[ch] (e_source_group_peek_source_by_name): added - new function. - -2003-10-10 Not Zed <NotZed@Ximian.com> - - * e-account-list.c (e_account_list_find): add FIND_UID find type. - -2003-09-26 Jeffrey Stedfast <fejj@ximian.com> - - * e-host-utils.c (e_gethostbyaddr_r): IPv6 implementation - rewritten to use getnameinfo() which is the proper function to use - in this case. Fixes bug #46006 the Right Way (tm). - -2003-09-25 Jeffrey Stedfast <fejj@ximian.com> - - * e-host-utils.c (e_gethostbyaddr_r): Make sure that - res->ai_canonname is non-NULL and that it doesn't match the - numeric host address that we were trying to resolve. Fixes the - second half of bug #46006. - -2003-09-19 Jeffrey Stedfast <fejj@ximian.com> - - * e-host-utils.c (e_gethostbyaddr_r): Work around a bug in glibc - 2.3.2's gethostbyaddr_r() implementation. - -2003-09-15 Larry Ewing <lewing@ximian.com> - - * e-source.c (e_source_dump_to_xml_node): make sure declarations - precede the body. - -2003-09-11 Dan Winship <danw@ximian.com> - - * Makefile.am (noinst_LTLIBRARIES): Remove libeutil-static.la and - libeconduit-static.la - - * ename/Makefile.am (noinst_LTLIBRARIES): Remove - libename-static.la - -2003-08-28 Hans Petter Jansson <hpj@ximian.com> - - * eggtrayicon.[ch]: Added for tray icon support. To be removed when - libgnomeui sports this functionality. - - * Makefile.am: Include eggtrayicon. - -2003-08-27 Jeffrey Stedfast <fejj@ximian.com> - - * e-mktemp.c (e_mktemp_cleanup): We need to unlink the full paths - in the tmpdirs, not just the base path. - -2003-08-20 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com> - - * e-time-utils.c (parse_with_strptime): Fixes #43558 Appointment - Editor always gives time validation error for apptmnts in non - UTF-8/non ASCII locales. - -2003-08-17 Ettore Perazzoli <ettore@ximian.com> - - * test-source-list.c: No short letter for --key. - -2003-08-15 Ettore Perazzoli <ettore@ximian.com> - - * e-uid.c: #include <glib/gstrfuncs.h> - - * test-source-list.c: Add options to display, set and unset the - color as well. - - * e-source.c: New members has_color, color in struct - ESourcePrivate. - (e_source_update_from_xml_node): Parse a color property from the - XML node. Protect from NULL name and relative_uri members as - well. - (e_source_dump_to_xml_node): Set a color property on the XML node. - (e_source_get_color): New. - (e_source_set_color): New. - (e_source_unset_color): New. - (e_source_new_from_xml_node): Use e_source_update_from_xml_node() - instead of getting the data from the XML yourself. - -2003-08-14 Ettore Perazzoli <ettore@ximian.com> - - Add UIDs to ESource* items so we can distinguish renames from - removals/additions. - - * test-source-list.c: Made --source and --group get UIDs instead - of names. - (on_idle_do_stuff): Updated behavior accordingly. - (dump_list): Print "(No items)" if there are no groups. - (dump_group): Print the UID of the group. - (dump_source): Print the UID of the source. - - * e-source-list.c (load_from_gconf): Match with group UIDs instead - of group names. - (e_source_list_peek_source_by_uid): New. - (e_source_list_peek_source_by_name): Removed. - (e_source_list_peek_group_by_uid): New. - (e_source_list_peek_group_by_name): Removed. - (e_source_list_remove_group_by_uid): New. - (e_source_list_remove_group_by_name): Removed. - (e_source_list_remove_source_by_uid): New. - (e_source_list_remove_source_by_name): Removed. - - * e-source-group.c: New member uid in struct ESourceGroupPrivate. - (impl_finalize): Free it. - (e_source_group_new): Set the uid member using e_uid_new(). - (e_source_group_peek_source_by_uid): New. - (e_source_group_peek_source_by_name): Removed. - (e_source_group_add_source): Check that the UID is unique, instead - of the name. - (e_source_group_remove_source_by_uid): New. - (e_source_group_remove_source_by_name): Removed. - (e_source_group_update_from_xmldoc): Use the UID to figure out - which source has changed, instead of the name. - (e_source_group_uid_from_xmldoc): New. - (e_source_group_name_from_xmldoc): Removed. - (e_source_group_new_from_xmldoc): Set the UID in the new group - from the XML. - (e_source_group_to_xml): Set a UID property in the XML. - - * e-source.c: New member uid in struct ESourcePrivate. - (e_source_new): Initialize using e_uid_new(). - (impl_finalize): Free. - (e_source_peek_uid): New. - (e_source_new_from_xml_node): Set the UID from the XML node. - (e_source_name_from_xml_node): Removed. - (e_source_uid_from_xml_node): New. - (e_source_dump_to_xml_node): Set the "uid" property on the XML - node. - - * e-account.c (e_account_gen_uid): Removed. - (e_account_new): Use e_uid_new() instead of e_account_gen_uid(). - - * e-uid.c (e_uid_new): New file, new function. - -2003-08-13 Ettore Perazzoli <ettore@ximian.com> - - Fix up the semantics of "changed" signals on GConf changes. - - * e-source-group.c (e_source_group_update_from_xmldoc): Added new - member ignore_source_changed in struct _ESourceGroupPrivate. - (e_source_group_update_from_xmldoc): Increment - ignore_source_changed before calling - e_source_update_from_xml_node(), decrement afterwards. - (source_changed_callback): Only emit "changed" if - ignore_source_changed is zero. - (e_source_group_update_from_xmldoc): Properly emit the "changed" - signal when the base_uri or the name change. - - * e-source-list.c: Changed type of sync_idle_id from gboolean (!) - to int and added new member ignore_group_changed in struct - _ESourceListPrivate. - (load_from_gconf): Increment ignore_group_changed before calling - e_source_group_update_from_xmldoc() and decrement it afterwards. - (group_changed_callback): Only emit the signal if - ignore_group_changed is zero. - - * e-source.c (e_source_update_from_xml_node): Removed arg - emit_signals. Always emit signals. - - * e-source-group.c (e_source_group_update_from_xmldoc): Removed - arg emit_signals. Always emit signals. - (e_source_group_update_from_xml): Likewise. - -2003-08-11 Ettore Perazzoli <ettore@ximian.com> - - * e-source.c (e_source_set_group): Weak_unref the current group if - not NULL and properly handle the case where a NULL group is being - passed in. - -2003-08-11 Ettore Perazzoli <ettore@ximian.com> - - * e-source-group.c: New file. - * e-source-group.h: New file. - * e-source-list.h: New file. - * e-source-list.c: New file. - * e-source.c: New file. - * e-source.h: New file. - * test-source-list.c: New file to test the above. - -2003-08-11 Not Zed <NotZed@Ximian.com> - - * e-msgport.c (e_thread_put): check pthread_create return code - properly. - (e_mutex_lock): check pthread* return codes properly. - (e_mutex_unlock): Same here. - (e_mutex_cond_wait): and here. - -2003-08-05 Dan Winship <danw@ximian.com> - - * e-html-utils.c (special_chars): add a flag for non-url chars - (controls, whitespace, ", and |) - (url_extract): Use that. When urlifying just a hostname, make sure - it really is a hostname, and not just something like "www.c". - (e_text_to_html_full): Deal with url_extract returning NULL in the - "www." case - (main): add a regression test, #ifdef E_HTML_UTILS_TEST - -2003-07-24 Rodrigo Moya <rodrigo@ximian.com> - - * e-config-listener.c (add_key): just preload one level of GConf keys, - since preloading all makes the calendar startup slow. - -2003-07-23 Dan Winship <danw@ximian.com> - - * Makefile.am: Use EVO_MARSHAL_RULE - - * e-component-listener.c (connection_listen_cb): Fix a non-ANSI - switch label. - - * e-gui-utils.c: only include "art/empty.xpm" if - HAVE_LIBGNOMEUI_GNOME_ICON_LOOKUP_H isn't defined - - * e-xml-hash-utils.c (e_xml_to_hash): Deconstify a non-const - variable to fix a warning. - -2003-07-03 JP Rosevear <jpr@ximian.com> - - * e-xml-hash-utils.c (foreach_save_func): encode the text - (e_xml_from_hash): pass xmlDoc to foreach method - (e_xmlhash_new): check for file existence - (e_xmlhash_destroy): only destroy the hash if it exists - -2003-07-01 Dan Winship <danw@ximian.com> - - * e-gui-utils.c (e_icon_for_mime_type): New function to return an - icon for a MIME type, using GnomeIconTheme if available or - gnome-vfs and gnome-mime-data if not. - -2003-06-19 Dan Winship <danw@ximian.com> - - * e-xml-hash-utils.c (e_xml_to_hash): don't leak an extra copy of - the values - -2003-06-14 Larry Ewing <lewing@ximian.com> - - * e-name-western.c (e_name_western_get_suffix_at_str_end): free - word before breaking out of the loop. - -2003-06-12 Rodrigo Moya <rodrigo@ximian.com> - - * e-config-listener.c (add_key): use GCONF_CLIENT_PRELOAD_RECURSIVE - when adding watched directories to avoid GConfd round-trips. - -2003-06-12 Jeffrey Stedfast <fejj@ximian.com> - - * e-trie.c (e_trie_free): Free the fail_states array. - -2003-05-30 Jeffrey Stedfast <fejj@ximian.com> - - * e-meta.c (meta_load): Stat the file to make sure it exists - before trying to parse it using xmlParseFile(). - diff --git a/e-util/ChangeLog.pre-1-4 b/e-util/ChangeLog.pre-1-4 deleted file mode 100644 index 3cbac0eade..0000000000 --- a/e-util/ChangeLog.pre-1-4 +++ /dev/null @@ -1,2649 +0,0 @@ -2003-05-29 JP Rosevear <jpr@ximian.com> - - Fixes #43775 - - * e-time-utils.c (locale_supports_12_hour_format): use e_utf8_strftime - (e_time_format_date_and_time): ditto - (e_time_format_time): ditto - -2003-05-16 Dan Winship <danw@ximian.com> - - * e-proxy.c (e_proxy_init): Removing trailing / in key name passed - to gconf_client_notify_add to kill a warning. (Part of #43159) - -2003-05-16 Jeremy Katz <katzj@redhat.com> - - * e-sexp.c (term_eval_and): Use glib macros for pointer/int - conversion. - -2003-05-07 Rodrigo Moya <rodrigo@ximian.com> - - Fixes crash in #42212 - - * e-url.c (e_uri_new): check for 'uri_string' being NULL. - -2003-05-02 Not Zed <NotZed@Ximian.com> - - * e-request.c (e_request_string): remove the assert, if we dont - understand the response, assume it's a cancel. - GTK_RESPONSE_DELETE_EVENT wasn't handled [#42038]. - -2003-04-30 Ettore Perazzoli <ettore@ximian.com> - - * e-request.c (e_request_string): Handle GTK_RESPONSE_NONE. - [#42038] - -2003-04-24 Chris Toshok <toshok@ximian.com> - - [ for bug #41211 ] - - * e-gui-utils.h (e_button_new_with_stock_icon): add prototype. - - * e-gui-utils.c (e_button_new_with_stock_icon): new function, - allow us to create a custom labeled button with a stock icon. - -2003-04-28 Jeffrey Stedfast <fejj@ximian.com> - - * e-host-utils.c: Added #include <netinet/in.h> for the - sockaddr_in6 typedef for at least MacOS X. - -2003-04-17 Jeffrey Stedfast <fejj@ximian.com> - - * e-host-utils.c (e_gethostbyname_r): Keep our buf ptr aligned to - sizeof (char *). Should fix bug #41362. - (e_gethostbyaddr_r): Same. - -2003-04-18 Anna Marie Dirks <anna@ximian.com> - - * e-request.c (e_request_string): Added appropriate spacing/padding - to the rename dialogs. Fixes bugs #41040, #41036, #41038 - -2003-04-18 Ettore Perazzoli <ettore@ximian.com> - - * e-gtk-utils.c (e_gtk_button_new_with_icon): Remove debugging - message. - -2003-04-14 Jeffrey Stedfast <fejj@ximian.com> - - * e-sexp.c: Finished an #if 0'd out port to GObject from an #if - 0'd out GtkObject subclassing. - -2003-04-15 Hans Petter Jansson <hpj@ximian.com> - - * e-sexp.c (e_sexp_add_function) - (e_sexp_add_ifunction): Make sure any old symbol with the same name - as the one being added, is removed first. - -2003-04-14 Not Zed <NotZed@Ximian.com> - - * e-gtk-utils.c (e_gtk_button_new_with_icon): Utility function to - create a button with a stock icon. - -2003-04-09 Jeffrey Stedfast <fejj@ximian.com> - - * e-host-utils.c (e_gethostbyaddr_r): Change the 'len' argument to - 'addrlen' so that when IPv6 is enabled, our temp vriable (also - named len) does not cause confusion. Fixes bug #40979. - -2003-04-05 Ettore Perazzoli <ettore@ximian.com> - - * e-passwords.c (e_passwords_remember_password): Removed debugging - message that would spit out the actual password, albeit in encoded - form. - -2003-04-04 Dan Winship <danw@ximian.com> - - * e-account-list.c (gconf_accounts_changed): Don't start emitting - ACCOUNT_ADDED signals until we've added all of the new accounts to - our list. Otherwise if the signal handler calls - e_account_list_get_default_account() it will end up causing the - first account in the list to become the default. #40675 - -2003-04-04 Chris Toshok <toshok@ximian.com> - - * ename/e-name-western.c (e_name_western_extract_middle): fix abr. - (e_name_western_get_suffix_at_str_end): same. - -2003-04-02 Not Zed <NotZed@Ximian.com> - - * e-passwords.c (e_passwords_forget_passwords): Delete all - Passwords-* sections. Should make this work. - -2003-03-31 Chris Toshok <toshok@ximian.com> - - * ename/test-ename-western.c (do_name): print "" if the value is - NULL. - (main): add a couple of utf8 test cases (that still use western - orderings). - - * ename/e-name-western.c (e_name_western_str_count_words): - utf8-ize this. - (e_name_western_cleanup_string): same. - (e_name_western_get_words_at_idx): same. - (e_name_western_get_one_prefix_at_str): same. - (e_name_western_get_prefix_at_str): same. - (e_name_western_extract_first): same. - (e_name_western_extract_middle): same. - (e_name_western_extract_nickname): same. - (e_name_western_extract_last): same. - (e_name_western_get_preceding_word): same. - (e_name_western_get_suffix_at_str_end): same. - (e_name_western_detect_backwards): same. - (e_name_western_reorder_asshole): same. - (FINISH_CHECK_MIDDLE_NAME_FOR_CONJUNCTION): same. - (e_name_western_fixup): same. - (e_name_western_parse): validate the string and truncate it if - need be. - -2003-03-27 JP Rosevear <jpr@ximian.com> - - * e-account-list.c (e_account_list_find): guard against NULL keys - -2003-03-25 Dan Winship <danw@ximian.com> - - * e-dialog-utils.c (e_notice): Move this here from gal. Use - e_dialog_set_transient_for so it DTRT for out-of-proc components. - (e_notice_with_xid): Like e_notice but with an X Window ID as the - parent window - (e_gnome_dialog_set_parent): Remove this, since it was marked - deprecated and only used in one place. - (e_file_dialog_save): Make this use GtkMessageDialog instead of - GnomeDialog - (e_dialog_set_transient_for_xid): #ifdef out gtk 2.2 api usage - -2003-03-25 Not Zed <NotZed@Ximian.com> - - * e-meta.c (meta_filename): fix a typo & some missing headers. - -2003-03-24 Dan Winship <danw@ximian.com> - - * e-dialog-utils.c (e_dialog_set_transient_for, - e_dialog_set_transient_for_xid): Rename, rewrite, make them - actually work. - -2003-03-25 Not Zed <NotZed@Ximian.com> - - * Makefile.am: Added e-meta.[ch] to libeutil - - * e-meta.[ch]: simple api to implement meta-data for keyed - objects. - -2003-03-20 Jeffrey Stedfast <fejj@ximian.com> - - * e-trie.c (e_trie_search): If the gunichar is 0xfffe, just skip - processing it. Maybe this will fix bug #39900. - (trie_utf8_getc): Removed unused labels to shutup the compiler. - -2003-03-19 Jeffrey Stedfast <fejj@ximian.com> - - * e-sexp.h: Fix ESExpClass to never be an empty struct. Also make - ESExp optionally a subclass of GObject rather than GtkObject (not - that we'll probably ever make it so, but for completeness sake?). - -2003-03-18 Jeffrey Stedfast <fejj@ximian.com> - - * e-trie.c (trie_utf8_getc): Don't use __inline__ as it is not - always defined. - -2003-03-13 Dan Winship <danw@ximian.com> - - * ename/e-address-western.c (e_address_western_parse): When - declaring a line to be part of "extended" because we don't know - what else to call it, keep the preceding "\n" so that the address - still looks the same when we reassemble the pieces later. Fixes - handling of non-US addresses - -2003-03-12 Dan Winship <danw@ximian.com> - - * e-xml-hash-utils.c (e_xml_to_hash): Update for a libxml2 change - that was making this code g_warn a lot - -2003-03-06 Ettore Perazzoli <ettore@ximian.com> - - * e-request.c (e_request_string): Make the entry activate the - default response in the dialog. - -2003-03-03 Rodney Dawes <dobey@ximian.com> - - * e-proxy.c: Use gnome2 proxy settings - -2003-03-02 Rodney Dawes <dobey@ximian.com> - - * e-pilot-util.c: s/gnome-xml/libxml/ - -2003-02-27 JP Rosevear <jpr@ximian.com> - - * Makefile.am: include gnome-pilot cflags - -2003-02-23 Jeffrey Stedfast <fejj@ximian.com> - - * e-account-list.c (gconf_accounts_changed): 'uid' should not be - const. - -2003-02-20 Not Zed <NotZed@Ximian.com> - - * e-account-list.c (e_account_list_get_default): helper to get the - dfault account. - (e_account_list_set_default): helper to set the default account. - (e_account_list_find): Helper to find accounts based on differnet - key types. - (e_account_list_add): helper to add account + emit added event. - (e_account_list_change): helper to emit changed event. - (e_account_list_remove): herlper to remove account + emit changed event. - -2003-02-22 Hans Petter Jansson <hpj@ximian.com> - - * e-categories-config.c (e_categories_config_open_dialog_for_entry): - A result of 0 no longer indicates success; GTK_RESPONSE_OK does. - -2003-02-17 Chris Toshok <toshok@ximian.com> - - * e-account-list.c (gconf_accounts_changed): fix memleak - free - uid. - -2003-02-11 Not Zed <NotZed@Ximian.com> - - * e-trie.c (trie_utf8_getc): Instead of simply ignoring bad chars, - return the sentinal invalid char 0xfffe, so that we properly track - the start of sequences. - -2003-02-10 Ettore Perazzoli <ettore@ximian.com> - - * Makefile.am (libeutil_static_la_DEPENDENCIES): Make - libeutil-static.la depend on libeutil.la so that parallel - compilations work; building them at the same time confuses - libtool. - (e-util-marshal.h, e-util-marshal.c): Use different tmp files so - these rules can happen in parallel. - -2003-02-05 Dan Winship <danw@ximian.com> - - * Makefile.am (eutilincludedir, etc): define in terms of - privincludedir. - - * ename/Makefile.am (libenameincludedir): Likewise - - * e-account.c: Fix warnings - * e-account-list.c: Likewise - * e-config-listener.c: Likewise - * e-gui-utils.c: Likewise. - * e-lang-utils.c: Likewise - * e-msgport.c: Likewise - * e-passwords.c: Likewise - - * e-categories-config.c - (e_categories_config_open_dialog_for_entry): Use g_object_get/_set - rather than gtk_ - - * e-url.c (e_uri_new): Use g_ascii_strdown instead of deprecated - g_strdown. - -2003-01-27 Ettore Perazzoli <ettore@ximian.com> - - * e-request.c (e_request_string): Port to GtkDialog. Strdup the - text returned by GtkEntry after destroying the dialog, not before. - Use gtk_editable_select_region() instead of - gtk_entry_select_region(). Add a little bit of padding to make it - look less crampy and set a default width. - - * e-dialog-utils.h (e_gnome_dialog_set_parent): Declare only if - GNOME_DISABLE_DEPRECATED is not #defined. - (e_gnome_warning_dialog_parented): Likewise. - (e_gnome_ok_cancel_dialog_parented): Likewise. - -2003-01-26 Chris Toshok <toshok@ximian.com> - - * e-pilot-settings.c (e_pilot_settings_new): ref/sink the pilot - settings to clear up that gtk warning. - -2003-01-25 Chris Toshok <toshok@ximian.com> - - * e-pilot-map.c (e_pilot_map_read): g_file_exists -> g_file_test. - (e_pilot_map_write): don't use doc->root. - -2003-01-25 Chris Toshok <toshok@ximian.com> - - * e-pilot-settings.[ch]: GObjectify this. - -2003-01-24 Hans Petter Jansson <hpj@ximian.com> - - * e-categories-config.c (initialize_categories_config): Enable - getting the categories master list from wombat. - (e_categories_config_open_dialog_for_entry): It's now a GtkDialog. - -2003-01-22 Ettore Perazzoli <ettore@ximian.com> - - * Makefile.am (eutilincludedir): Version using $(BASE_VERSION). - (econdincludedir): Likewise. - (edb3includedir): Likewise. - (imagesdir): Likewise. - - * ename/Makefile.am: Install libename in $(privlibdir) and - $(includedir)/evolution-$(BASE_VERSION)/ename. - -2003-01-17 Jeffrey Stedfast <fejj@ximian.com> - - * e-account-list.c: Changed signal names to use - instead of _ - like the rest of Gtk2. - - * e-account.c (e_account_import): New function that is basically - the old account_copy(). - -2003-01-17 Dan Winship <danw@ximian.com> - - * e-xml-hash-utils.c: New, sort of from evolution-recurid-branch. - -2003-01-16 Dan Winship <danw@ximian.com> - - * e-account.c: New class, based on MailConfigAccount, for - describing an evolution (mail) account. - - * e-account-list.c: New class for tracking the list of configured - accounts. (Also uses some code from mail-config.) - - * e-list.c (e_list_construct, e_list_remove): New - -2003-01-14 Ettore Perazzoli <ettore@ximian.com> - - * e-dialog-utils.c: Do not #include <e-bonobo-widget.h>. - (e_set_dialog_parent): Remove the BonoboWidget handling stuff (it - doesn't really work anyways). - -2003-01-14 Ettore Perazzoli <ettore@ximian.com> - - * Makefile.am (eutilinclude_HEADERS): Add e-dialog-utils.h. - -2003-01-09 Chris Toshok <toshok@ximian.com> - - * e-gui-utils.c (e_create_image_widget): change this to use - GtkImage instead of GnomeCanvas. - -2003-01-08 Ettore Perazzoli <ettore@ximian.com> - - * Makefile.am: Images are now in $(datadir)/evolution/images - instead of $(datadir)/images/evolution. - -2003-01-07 Dan Winship <danw@ximian.com> - - * e-config-listener.c (e_config_listener_remove_value): New. - - * e-passwords.c (e_passwords_get_password): Don't look at the - passwords hash until calling e_passwords_init(). - -2003-01-06 Dan Winship <danw@ximian.com> - - * e-html-utils.c: Add this back: Connector needs it, and there's - no reason for addressbook and calendar to be using camel to get - this functionality. - - * Makefile.am (libeutil_la_SOURCES): re-add e-html-utils - -2003-01-02 Jeffrey Stedfast <fejj@ximian.com> - - A bunch of fixes to make e-util build with -DG_DISABLE_DEPRECATED - and -DGTK_DISABLE_DEPRECATED. - -2003-01-02 Ettore Perazzoli <ettore@ximian.com> - - * e-gtk-utils.c (e_signal_connect_full_while_alive): Get to - compile. - (e_signal_connect_while_alive): Like. - -2002-12-19 Ettore Perazzoli <ettore@ximian.com> - - * e-gtk-utils.c (e_signal_connect_while_alive): New. - (e_signal_connect_full_while_alive): Renamed from - e_gtk_signal_connect_full_while_alive(). - -2002-12-16 Jeffrey Stedfast <fejj@ximian.com> - - * e-html-utils.[c,h]: Removed. Back to the fiery depths of hell - from whence ye came! - -2002-12-10 Rodrigo Moya <rodrigo@ximian.com> - - * e-config-listener.[ch] (e_config_listener_remove_dir): new - function. - -2002-12-09 Jeffrey Stedfast <fejj@ximian.com> - - * e-trie.c: New implementation of an Aho-Corasick trie. - -2002-12-09 Chris Toshok <toshok@ximian.com> - - * e-passwords.h: track changes to api (e_passwords_init is gone, - and several functions take the component name as an arg.) - - * e-passwords.c (e_passwords_init): make this static, and allow - multiple calls. Also, it no longer takes the component name. - (e_passwords_shutdown): make this deal with the case where - e_passwords_init wasn't called (no hashtable), and it no longer - needs to free component_name. - (e_passwords_forget_passwords): call e_passwords_init. - (e_passwords_clear_component_passwords): take component_name as an - arg, and call e_passwords_init. - (password_path): take component_name as an arg. - (e_passwords_remember_password): same, and call e_passwords_init. - (e_passwords_forget_password): same. - (e_passwords_get_password): same. - (e_passwords_add_password): call e_passwords_init. - (e_passwords_ask_password): take component_name as an arg. - -2002-12-07 Not Zed <NotZed@Ximian.com> - - * e-msgport.c (e_mutex_cond_wait): Allow an e-mutex to be used - with standard condition variables. - -2002-12-06 Chris Toshok <toshok@ximian.com> - - * e-categories-master-list-wombat.c (ecmlw_load): change to a more - gconf-like path (with underscores, etc.) - (ecmlw_save): same. - -2002-11-26 Dan Winship <danw@ximian.com> - - * e-lang-utils.c (e_get_language_list): If the language is - something like "fr_FR", return both "fr_FR" and "fr" in the list. - Oaf doesn't consider "fr_FR" to match a "-fr" translation. - -2002-11-22 Not Zed <NotZed@Ximian.com> - - * e-msgport.c (EMsgPort): Added an optional nspr pipe field. - (e_msgport_new): Init nspr pipe to null. - (e_msgport_destroy): close prfiledesc's if they're open. - (e_msgport_prfd): get the prfiledesc to wait asynchronously on. - (e_msgport_put): Write notify to nspr pipe if it exists. - (e_msgport_wait): poll nspr pipe fd if it is set, and the pipe fd - isn't. - (e_msgport_get): skim off a notify byte on the pr pipe if set. - (): Include config.h, and nspr stuff if HAVE_NSS is set. - -2002-11-13 Ettore Perazzoli <ettore@ximian.com> - - * e-config-listener.c (e_config_listener_get_string_with_default): - Make sure we don't use a string value from a GConfValue that got - freed. - -2002-11-12 Chris Toshok <toshok@ximian.com> - - * Makefile.am - (eutilinclude_HEADERS): add e-password.h - (libeutil_la_SOURCES): add e-password.c - - * e-passwords.[ch]: port this to gnome2's gnome-config-private. - -2002-11-11 Ettore Perazzoli <ettore@ximian.com> - - * e-config-listener.c (add_key): g_strdup() the value in the case - of a string value. - -2002-11-11 Jeffrey Stedfast <fejj@ximian.com> - - * Makefile.am: Re-add e-proxy.c to the build. - -2002-11-08 Chris Toshok <toshok@ximian.com> - - * Makefile.am (eutilinclude_HEADERS): add e-categories-config.h - and e-categories-master-list-wombat.h - (libeutil_la_SOURCES): add e-categories-master-list-wombat.c - - * e-categories-master-list-wombat.[ch]: port work. - -2002-11-07 JP Rosevear <jpr@ximian.com> - - * e-categories-config.c (e_categories_config_get_icon_for): pass - extra pixbuf param - - * e-categories-config.h: use G_*_DECLS - - * e-dialog-utils.c (save_ok): update g_file_test params - - * Makefile.am: Compile some additional files - -2002-11-06 Chris Toshok <toshok@ximian.com> - - * e-config-listener.c (e_config_listener_set_boolean): init err to - NULL so if there isn't an error we aren't left with an unitialized - GError. Fixes crash. - (e_config_listener_set_float): same. - (e_config_listener_set_long): same. - (e_config_listener_set_string): same. - -2002-11-05 Rodrigo Moya <rodrigo@ximian.com> - - * e-component-listener.[ch]: ported to GObject. - - * Makefile.am: re-enabled e-component-listener.[ch] - -2002-11-03 Rodrigo Moya <rodrigo@ximian.com> - - * e-config-listener.[ch] (e_config_listener_get_boolean, - e_config_listener_get_float, e_config_listener_get_long, - e_config_listener_get_string): new simpler functions, without - a default value. - -2002-11-03 Ettore Perazzoli <ettore@ximian.com> - - * e-config-listener.c (e_config_listener_get_float_with_default): - Removed unused variable. - (e_config_listener_get_long_with_default): Likewise. - (e_config_listener_get_string_with_default): Likewise. - - * Makefile.am: Compile e-config-listener.[ch]. - -2002-11-02 Chris Toshok <toshok@ximian.com> - - * Makefile.am: add marshal building stuff, add e-util-marshal.c to - SOURCES, and add e-util-marshal.list to EXTRA_DIST. - - * e-util-marshal.list: add marshallers for e-util. - - * e-list.c: convert to GObject. - - * e-list.h: convert to GObject. - - * e-iterator.c: convert to GObject. - - * e-iterator.h: convert to GObject. - - * e-list-iterator.c: convert to GObject. - - * e-list-iterator.h: convert to GObject. - - * .cvsignore: ignore e-util-marshal.[ch] - -2002-11-02 Ettore Perazzoli <ettore@ximian.com> - - * ename/Makefile.am (INCLUDES): Removed -I$(includedir). - - * ename/test-ename-western-gtk.c: #include - <libgnomeui/gnome-ui-init.h> instead of <libgnomeui/gnome-init.h>. - (create_window): Added GTK_SIGNAL_FUNC() cast. - (main): Use gnome_program_init(). - - * e-db3-utils.c: Do not #include <libgnome/gnome-defs.h>. - - * e-request.c: Do not #include <libgnomeui/gnome-stock.h>. - - * e-memory.c (e_memchunk_clean): Replace GSearchFunc with - GCompareFunc. - - * e-iterator.c (e_iterator_class_init): GTK2-ified. - (ECI_CLASS): Likewise. - - * e-html-utils.c: Do not #include <gal/unicode/gunicode.h>. - - * e-gui-utils.c: Don't #include <libgnome/gnome-defs.h>. - (e_create_image_widget): Pass NULL to gdk_pixbuf_new_from_file() - for the error arg. - - * e-corba-utils.h: #include <orbit/orbit.h> instead of - <orb/orbit.h>. - - * Makefile.am: Removed bonobo-factory-util.c, - bonobo-factory-util.h, e-categories-master-list-wombat.h, - e-categories-master-list-wombat.c, e-dialog-utils.c, - e-dialog-utils.h, e-proxy.c e-proxy.h for now. - -2002-11-02 Rodrigo Moya <rodrigo@ximian.com> - - * e-config-listener.[ch]: ported to GConf and GObject. - -2002-11-01 Rodrigo Moya <rodrigo@ximian.com> - - * e-config-listener.[ch]: - * e-component-listener.[ch]: compilation fixes for GNOME 2 porting. - -2002-10-24 Rodrigo Moya <rodrigo@ximian.com> - - Fixes #32764 - - * e-config-listener.c (add_key): store the value returned by - bonobo_event_source_client_add_listener, so that we can remove it - later, when freeing the key structure. - (free_key_hash): remove listener. - (e_config_listener_set_boolean): - (e_config_listener_set_float): - (e_config_listener_set_long): - (e_config_listener_set_string): only set the cache values if there's - no exception. - (e_config_listener_destroy): remove all keys before unrefing the db - component. - -2002-10-23 Dan Winship <danw@ximian.com> - - * ename/e-name-western.c: Cast chars to unsigned char before - passing to ctype macros since they are not defined on negative - numbers. Fixes parsing problems with names with accented - characters on Solaris. (At least part of #32146) - -2002-09-25 Rodrigo Moya <rodrigo@ximian.com> - - * e-component-listener.c (ping_component_callback): added a comment - about the fix for #30918. - -2002-09-23 Rodrigo Moya <rodrigo@ximian.com> - - * e-component-listener.c (ping_component_callback): gtk_object_ref the - component listener before emitting the "component_died" signal, since - in most cases, the component listener will be destroyed in the - callbacks for that signal. - -2002-09-22 Dan Winship <danw@ximian.com> - - * e-config-listener.c: Fix some non-ANSI switch statements - - * e-path.c: #include <sys/types.h> for OS X - -2002-09-11 Chris Toshok <toshok@ximian.com> - - [ Fixes #27546 ] - * ename/e-name-western-tables.h - (e_name_western_complex_last_table): add "di" to - e_name_western_complex_last_table. - -2002-09-05 Rodrigo Moya <rodrigo@ximian.com> - - * e-config-listener.c (e_config_listener_set_boolean, - e_config_listener_set_float, e_config_listener_set_long, - e_config_listener_set_string): update the local copy (if we've - got one) so that we don't return values if asked before getting - the change notification. - -2002-09-04 Dan Winship <danw@ximian.com> - - * e-time-utils.c (e_mktime_utc): New. Like mktime(3), but assumes - the input time is UTC. - (e_localtime_with_offset): New. Like localtime_r(3), but also - returns an offset from UTC. - -2002-08-29 Dan Winship <danw@ximian.com> - - * e-list.c (e_list_destroy): Don't call g_list_foreach with the - free func if the free func is NULL. - -2002-08-28 Jeffrey Stedfast <fejj@ximian.com> - - * e-html-utils.c (e_text_to_html_full): Convert file: urls - too. Fixes bug #29557. - - * e-proxy.[c,h] (e_proxy_init): New convenience function to - initialise the proxy settings for soup to use. - -2002-08-27 Rodrigo Moya <rodrigo@ximian.com> - - * e-config-listener.c[ch] (e_config_listener_get_float_with_default, - e_config_listener_set_boolean, e_config_listener_set_float): new - functions. - (property_change_cb, add_key): added support for FLOAT values. - (e_config_listener_set_string): free strings before returning. - -2002-08-26 Peter Williams <peterw@ximian.com> - - * e-dialog-utils.c (set_transient_for_gdk): If gdk_window_foreign_new - returned NULL, we're probably screwed, but try to avoid a segfault. - (Preemptive fix suggested by kmaraas). - -2002-08-26 Rodrigo Moya <rodrigo@ximian.com> - - * e-config-listener.c (e_config_listener_get_string_with_default): - call g_strdup in the correct place, or we'll return the internal copy. - -2002-08-26 Rodrigo Moya <rodrigo@ximian.com> - - * e-config-listener.c (e_config_listener_set_long): only set the key - if the value is different from what we've already read from the - database, to avoid extra change notifications. - (e_config_listener_set_string): likewise. - -2002-08-22 Rodrigo Moya <rodrigo@ximian.com> - - * e-config-listener.[ch]: added "key_changed" signal to class. - (property_change_cb): emit "key_changed" signal. - (e_config_listener_set_long): new function. - (e_config_listener_get_long_with_default): new function. - -2002-08-22 Dan Winship <danw@ximian.com> - - * e-path.c (e_path_rmdir): Remove an e_path directory, and its - parent "subfolders" dir if it's now empty. - -2002-08-22 JP Rosevear <jpr@ximian.com> - - * e-time-utils.c (e_time_parse_date): if the year was two digits, - add the current century - - Fixes # 17252 - -2002-08-16 Rodrigo Moya <rodrigo@ximian.com> - - * e-config-listener.[ch]: new class for config database access and - monitoring. - - * Makefile.am: added new files. - -2002-08-14 Rodrigo Moya <rodrigo@ximian.com> - - * e-component-listener.[ch]: new class for controlling a component, - to detect when it dies. - -2002-08-01 Dan Winship <danw@ximian.com> - - * e-html-utils.c (is_citation): Remove the logic that assumes - "Rupert> " is a citation, since it misfires more often than it - hits. - -2002-07-31 Dan Winship <danw@ximian.com> - - * e-html-utils.c (is_addr_char, is_trailing_garbage): Don't use - "isprint(c)" to mean "c >= 32 && c < 128" since it doesn't in most - locales. - (is_domain_name_char): new macro for dns-valid characters - (email_address_extract): Use is_domain_name_char rather than - is_addr_char for the part after the @. - -2002-07-30 Jeffrey Stedfast <fejj@ximian.com> - - * e-host-utils.c (e_gethostbyname_r): If the user has enabled IPv6 - support, use getaddrinfo to resolve hostnames and then manually - fit the result into a struct hostent. - (e_gethostbyaddr_r): Same. - -2002-07-25 Not Zed <NotZed@Ximian.com> - - * e-msgport.c (e_dlist_length): Return the actual count, rather - than always 0! - -2002-07-03 Peter Williams <peterw@ximian.com> - - * Makefile.am: Install libeutil, libeconduit, and libedb3util and - their headers. - -2002-07-15 Not Zed <NotZed@Ximian.com> - - * e-sexp.c (term_eval_caststring): Cast to a string type. - (term_eval_castint): Cast to an int type. - (symbols[]): Add to symbol table. - -2002-07-09 Dan Winship <danw@ximian.com> - - * e-categories-config.c: #include <string.h> - -2002-07-02 Rodrigo Moya <rodrigo@ximian.com> - - * e-categories-config.c (e_categories_config_get_icon_for): changed to - return a gboolean (TRUE if the icon is found, FALSE if not). - -2002-06-07 Not Zed <NotZed@Ximian.com> - - * e-dialog-utils.c (e_gnome_warning_dialog_parented): - (e_gnome_ok_cancel_dialog_parented): Use connect_while_alive, so - we're not called after we've quit. See bug #15397. - -2002-06-03 Not Zed <NotZed@Ximian.com> - - * e-msgport.c (e_msgport_wait): Protect against EINTR (irix?), see - bug #24086. - -2002-05-07 Ettore Perazzoli <ettore@ximian.com> - - * e-corba-utils.c (e_safe_corba_string_dup): New. - -2002-05-06 Not Zed <NotZed@Ximian.com> - - * e-msgport.c (e_thread_destroy): Destroy our mutex too. - (e_thread_new): Add thread to a new list of all threads. - (e_thread_destroy): Remove thread from list of all threads. - (e_thread_busy): New function, returh true if we're busy somewhere - processing work. - -2002-04-19 Jeffrey Stedfast <fejj@ximian.com> - - * e-passwords.c (e_passwords_get_password): Don't leak the base64 - encoded password buffer. - -2002-04-16 Jeffrey Stedfast <fejj@ximian.com> - - * e-host-utils.c (e_gethostbyaddr_r): New wrapper around - gethostbyaddr_r if the system has it, else a whole new - implementation. - -2002-04-11 Jeffrey Stedfast <fejj@ximian.com> - - * e-sexp.c (parse_value): Handle parsing negative integers. - -2002-03-29 JP Rosevear <jpr@ximian.com> - - * e-dialog-utils.c (e_file_dialog_save): open a file selection - dialog with the given title and return the selected file name - (save_ok): if the ok button is clicked, make sure the file doesn't - already exist and if it does, see if the user wants to over write - it - - * e-dialog-utils.h: new proto - -2002-03-22 Ettore Perazzoli <ettore@ximian.com> - - * e-lang-utils.c: New. - * e-lang-utils.h: New. - -2002-03-22 Dan Winship <danw@ximian.com> - - * e-request.c (e_request_string): Document the fact that this - takes two locale charset strings and one UTF8 string and returns a - UTF8 string. (Huh.) - -2002-03-04 Jeffrey Stedfast <fejj@ximian.com> - - * e-mktemp.c: #include <string.h> for strcmp. - -2002-02-22 Dan Winship <danw@ximian.com> - - * e-html-utils.c (e_text_to_html_full): Fix for if the buffer ends - with an email address (and no newline). - -2002-02-09 JP Rosevear <jpr@ximian.com> - - * e-pilot-settings.h: add row and column defines - -2002-01-27 Ettore Perazzoli <ettore@ximian.com> - - * ename/Makefile.am: Use E_NAME_CFLAGS and E_NAME_LIBS. - - * Makefile.am: Use E_UTIL_CFLAGS and E_UTIL_LIBS. - -2002-01-14 JP Rosevear <jpr@ximian.com> - - * Makefile.am: compile new files - - * e-pilot-settings.[hc]: beginnings of a general conduit - configuration gui - -2002-01-10 Christopher James Lahey <clahey@ximian.com> - - * ename/e-name-western.c (e_name_western_word_is_suffix): Allow - for a period after suffixes. Fixes Ximian bug #17012. - -2002-01-04 Jeffrey Stedfast <fejj@ximian.com> - - * e-memory.c (e_memchunk_clean): Prune free'd nodes from our free - list otherwise we'll end up re-using free'd memory blocks and - that's not a Good Thing (tm). - -2002-01-02 Jeffrey Stedfast <fejj@ximian.com> - - * md5-utils.h: Reverted. - -2002-01-02 Jeffrey Stedfast <fejj@ximian.com> - - * md5-utils.h: Move the struct into md5-utils.c - this is a - kludgey hack around the fact that NSS also defines - MD5Context. Besides, this should be a private struct anyway. - -2002-01-02 JP Rosevear <jpr@ximian.com> - - * e-dialog-utils.c (e_gnome_dialog_set_parent): util function - moved from mail-callbacks, also destroys the dialog if the parent - is destroyed - (e_gnome_warning_dialog_parented): similarly - (e_gnome_ok_cancel_dialog_parented): ditto - - * e-dialog-utils.h: new protos - -2001-12-17 JP Rosevear <jpr@ximian.com> - - * e-pilot-map.c (e_pilot_map_clear): clear all info from the map - - * e-pilot-map.h: add proto - -2001-12-10 JP Rosevear <jpr@ximian.com> - - * e-pilot-util.c (e_pilot_utf8_to_pchar): use UTF-8 instead of - UTF8 as the source char set - (e_pilot_utf8_from_pchar): use UTF-8 instead of UTF8 as the - destination char set - -2001-11-20 Dan Winship <danw@ximian.com> - - * e-passwords.c (e_passwords_forget_password): Clear the password - in bonobo-conf as well. Fixes ximian 14893. - -2001-11-13 Ettore Perazzoli <ettore@ximian.com> - - * Makefile.am (libeutil_la_LIBADD): Remove `-lc'. It makes the - mailer do strange things when it calls `fork()', thus breaking - e.g. mail sending through sendmail. - -2001-11-13 JP Rosevear <jpr@ximian.com> - - * e-pilot-map.c (real_e_pilot_map_insert): only insert non-0 pids - into the pid map - (e_pilot_map_insert): remove and free old keys/values here - - including possibly orphaned keys - (e_pilot_map_remove_by_uid): only free things if they should have - been found - -2001-11-13 JP Rosevear <jpr@ximian.com> - - * Makefile.am (libeutil_la_LIBADD): Explicitly add -lc - -2001-10-30 Damon Chaplin <damon@ximian.com> - - * e-time-utils.c (e_time_parse_date): added a 2nd format, with the - weekday and the date. We need this so we can try to parse DATE values - in the ECalendarTable. - -2001-10-29 Ettore Perazzoli <ettore@ximian.com> - - * e-dialog-utils.c (e_set_dialog_parent): Remove a g_warning. - -2001-10-29 Christopher James Lahey <clahey@ximian.com> - - * ename/e-name-western.c (e_name_western_fixup): Added French - conjunction. - - * e-host-utils.c: Don't define gethost_mutex unless we need it. - -2001-10-29 Christopher James Lahey <clahey@ximian.com> - - * ename/e-name-western.c: Cleaned this up a bit. - -2001-10-29 Christopher James Lahey <clahey@ximian.com> - - * ename/e-name-western.c (e_name_western_fixup): Check for - compound first names here (X & Y). Fixes Ximian bug #13859. - -2001-10-28 JP Rosevear <jpr@ximian.com> - - * e-pilot-map.c (e_pilot_map_remove_by_pid): make sure to free the - keys as well - (e_pilot_map_remove_by_uid): ditto - -2001-10-27 JP Rosevear <jpr@ximian.com> - - * e-pilot-map.h: update proto - - * e-pilot-map.c (e_pilot_map_lookup_pid): touch the nodes if - indicated and found - (e_pilot_map_lookup_uid): ditto - -2001-10-26 JP Rosevear <jpr@ximian.com> - - * e-pilot-map.c (real_e_pilot_map_insert): take an extra param on - whether to mark touched - (map_sax_start_element): use above - (e_pilot_map_insert): ditto - (e_pilot_map_write): pass in extra info to foreach call - (map_write_foreach): if we are in touched only mode, write out the - map only if its been touched - - * e-pilot-map.h: add new member - -2001-10-26 JP Rosevear <jpr@ximian.com> - - * e-pilot-map.c (map_sax_start_element): add archived records - with pilot id of 0 - (map_write_foreach): use the uid map for writing - (e_pilot_map_write): write using the uid map - -2001-10-26 JP Rosevear <jpr@ximian.com> - - * e-pilot-map.c (e_pilot_map_insert): free up old memory first - (e_pilot_map_destroy): free allocated memory when destroying - -2001-10-22 JP Rosevear <jpr@ximian.com> - - * e-pilot-map.c (map_set_node_timet): plug leak - -2001-10-23 Dan Winship <danw@ximian.com> - - * e-html-utils.c (e_text_to_html_full): Change " " to " " at - start of line. - -2001-10-22 Dan Winship <danw@ximian.com> - - * e-passwords.c (e_passwords_get_password): Pass a - CORBA_Environment to bonobo_config_get_string so it doesn't g_warn - on error. (Since the "error" is most likely just that the password - isn't cached.) - (e_passwords_remember_password, e_passwords_get_password, - e_passwords_add_password): Change "if (foo) { entire function; }" - to "if (!foo) return;" - - * e-html-utils.c (special_chars): Don't allow single quote or - backtick in email addresses, or pipes following URLs. - -2001-10-22 JP Rosevear <jpr@ximian.com> - - * e-dbhash.c (e_dbhash_foreach_key): null out DBT memory prior to - usage (from Edd Dumbill <edd@usefulinc.com>) - -2001-10-17 Ettore Perazzoli <ettore@ximian.com> - - * e-dialog-utils.c (e_set_dialog_parent_from_xid): New. - -2001-10-12 Chris Toshok <toshok@ximian.com> - - * e-passwords.h: new parameter to e_passwords_init, and add - prototype for e_passwords_clear_component_passwords. - - * e-passwords.c (e_passwords_init): copy off the component name. - (e_passwords_shutdown): free/NULL the component name. - (e_passwords_clear_component_passwords): new function. remove the - subtree rooted at /Passwords/<ComponentName>. - (e_passwords_remember_password): use component_name when building - up the path. - (e_passwords_get_password): same. - (e_passwords_add_password): remove/free the currently stored - session password for this key if there is one, before adding the - new one. - -2001-10-11 Chris Toshok <toshok@ximian.com> - - * e-passwords.h: change prototype for e_passwords_get_password. - - * e-passwords.c (e_passwords_get_password): remove 'const' from - return type - the return type is now allocated and must be freed - by the caller. - -2001-10-11 Chris Toshok <toshok@ximian.com> - - * e-passwords.c (e_passwords_init): open the bonobo config db for - our passwords. - (e_passwords_shutdown): sync and unref the bonobo db, and clear - out the per session hash. - (e_passwords_forget_passwords): remove the bonobo config db - /Passwords path, and free up the session hash (but don't destroy - it). - (e_passwords_remember_password): remove the key/value from the - session hash, after inserting it into the bonobo db. - (e_passwords_get_password): look up a session password for the - uri, and if it's not there, consult the bonobo db. - (e_passwords_ask_password): quiet gcc's warnings, and only consult - the toggle button state if we actaully created it. - -2001-10-09 Rodrigo Moya <rodrigo@ximian.com> - - * e-url.c (e_uri_to_string): don't add the host if it's null - -2001-10-06 Christopher James Lahey <clahey@ximian.com> - - * ename/e-address-western.c (e_address_western_parse): Made this - refuse to parse more than 2047 characters of address. - -2001-10-04 Dan Winship <danw@ximian.com> - - * e-passwords.c (e_passwords_add_password): Make this dup the - strings it's passed. - (*) Add lots of docs. - -2001-10-03 Rodrigo Moya <rodrigo@ximian.com> - - * e-url.c (e_uri_new): default protocol to file: if not specified - -2001-10-02 Rodrigo Moya <rodrigo@ximian.com> - - * e-url.c (e_uri_copy): duplicate also the params member - -2001-10-02 Rodrigo Moya <rodrigo@ximian.com> - - * e-url.[ch] (e_uri_copy, e_uri_to_string): new functions - -2001-10-01 Rodrigo Moya <rodrigo@ximian.com> - - * e-url.[ch]: added basic URI management functions - - * Makefile.am: added BONOBO flags to make it compile with latest - Bonobo, which installs headers in a version-based directory - -2001-10-01 Dan Winship <danw@ximian.com> - - * e-passwords.c (e_passwords_ask_password): New, copied/renamed - from mailer and gnome-libs. - -2001-09-30 Chris Toshok <toshok@ximian.com> - - * Makefile.am (libeutil_la_SOURCES): add e-passwords.[ch] - -2001-09-30 Chris Toshok <toshok@ximian.com> - - * e-passwords.c: copy/rename the mail specific password stuff - here. - - * e-passwords.h: same. - -2001-09-28 <NotZed@Ximian.com> - - * e-msgport.c (e_msgport_put): Write the pipe notification outside - the lock. This way if the pipe fills up because of too many - outstanding request, the queue isn't deadlocked. This only - happens wiht 4096 outstanding messages, so something is getting - VERY busy! Fixes #11121. - -2001-09-24 Christopher James Lahey <clahey@ximian.com> - - * e-categories-master-list-wombat.c (ecmlw_load, ecmlw_save): Make - the printouts here conditionally compiled out. - -2001-09-21 <NotZed@Ximian.com> - - * e-msgport.c (e_thread_destroy): Instead of using - pthread_cancel() which seems to have numerous implementation - issues, send a special quit message to the subordinate thread. - (thread_dispatch): When it gets a quit message, well, quit! - -2001-09-18 Ettore Perazzoli <ettore@ximian.com> - - * e-gtk-utils.c (widget_realize_callback_for_backing_store): Use - ->bin_window [instead of ->window] if the widget is a GtkLayout. - -2001-09-17 Damon Chaplin <damon@ximian.com> - - * e-time-utils.c (e_time_parse_date): only use 1 format, so we are - consistent everywhere. If we support multiple formats we have to - support that in e_time_parse_date_and_time() which means an explosion - of different formats. I don't think the alternatives are that useful, - anyway. - (e_time_parse_date_and_time): parse everything in one go, to avoid - i18n problems. Also only use '%p' if the locale has am/pm strings. - (e_time_parse_time): Only use '%p' if locale has am/pm strings. - -2001-09-17 Ettore Perazzoli <ettore@ximian.com> - - * e-gtk-utils.c (gtk_radio_button_get_nth_selected): Removed. - (gtk_radio_button_select_nth): Removed. - (e_make_widget_backing_stored): New. - -2001-09-13 Jeffrey Stedfast <fejj@ximian.com> - - * e-mktemp.c (e_mktemp_cleanup): Make sure the dir pointer is - non-NULL before using it. - -2001-09-08 Dan Winship <danw@ximian.com> - - * e-html-utils.c (e_text_to_html_full): Fix some broken calls to - check_size that could result in memory corruption displaying short - replies. - -2001-09-06 Dan Winship <danw@ximian.com> - - * e-html-utils.c (e_text_to_html_full): Add E_TEXT_TO_HTML_CITE, - to prepend "> " to each line. - -2001-09-05 Dan Winship <danw@ximian.com> - - * e-mktemp.c (get_path): Fix the check for the case when mkdir() - returns EEXIST to check S_ISDIR on the right structure component. - Fixes bug #8775. - -2001-08-31 Federico Mena Quintero <federico@ximian.com> - - * e-time-utils.c (e_time_parse_date_and_time): Added format for - "7 PM" and equivalents. Fixes bug #7456. - (e_time_parse_time): Likewise. - -2001-08-28 Not Zed <NotZed@Ximian.com> - - * e-categories-master-list-wombat.c (ecmlw_load): Dont call - g_print with a NULL string. See bug #7396. - -2001-08-24 Jeffrey Stedfast <fejj@ximian.com> - - * e-mktemp.c (get_path): Make more robust. - -2001-08-24 Jeffrey Stedfast <fejj@ximian.com> - - * Makefile.am: Added e-mktemp.[c,h] to the build. - - * e-mktemp.c (e_mktemp): A new wrapper around mktemp so that we - can keep track of temp files for later cleanup. - (e_mkstemp): Same but obviously for the mkstemp call. - (e_mkdtemp): And finally a mkdtemp wrapper. - -2001-08-24 Zbigniew Chyla <cyba@gnome.pl> - - * Makefile.am (libeutil_la_SOURCES): Added e-unicode-i18n.c and - e-unicode-i18n.h. - - * e-unicode-i18n.[ch]: New files with two extra functions - (e_utf8_gettext, e_utf8_dgettext) and U_() macro. - Should be used instead of _() if we need UTF-8 string. - -2001-08-23 Zbigniew Chyla <cyba@gnome.pl> - - * e-request.c (e_request_string): Modified to accept and return - UTF-8 string. It's currently used only in - shell/e-shortcuts-view.c and we need UTF-8 there. - -2001-08-20 Damon Chaplin <damon@ximian.com> - - * e-time-utils.c (e_time_parse_date): added comments to help - translators a bit. - -2001-08-09 Rodrigo Moya <rodrigo@ximian.com> - - * e-categories-config.c (e_categories_config_get_icon_for): return - when there's no icon associated with the category - - * e-categories-config.c: reworked to use the - ECategoriesMasterListWombat class. Also, load correctly images - (fixes #6794) - -2001-08-09 Federico Mena Quintero <federico@ximian.com> - - * e-categories-master-list-wombat.c (ecmlw_destroy): Chain to the - destroy handler in the parent class! - - * e-list-iterator.c (e_list_iterator_destroy): Likewise. Sigh. - - * e-list.c (e_list_destroy): Likewise. Double sigh. - -2001-08-08 Ettore Perazzoli <ettore@ximian.com> - - * e-dialog-utils.h: New. - * e-dialog-utils.c: New. - -2001-08-04 Ettore Perazzoli <ettore@ximian.com> - - * e-bonobo-factory-util.c - (e_bonobo_generic_factory_multi_display_new): New function to - create a factory that creates separate component instances for - different displays. - -2001-08-03 Christopher James Lahey <clahey@ximian.com> - - * e-list-iterator.c (e_list_iterator_next): Made it so that - e_list_iterator_next goes to the first element if it's set to - NULL. This makes deleting the first element and then doing - e_list_iterator_next go to the new first element. Did the analogy - for e_list_iterator_prev for completeness and consistency's sakes. - Fixes Ximian bug #6057. - -2001-08-01 Christopher James Lahey <clahey@ximian.com> - - * e-categories-master-list-wombat.c (ecmlw_load): Fixed the load - statement here by just using array_from_string. - (ecmlw_save): Removed the part where we save the icons and colors - since that's handled in the array_to_string function. Fixes - Ximian bug #4451. - -2001-07-27 JP Rosevear <jpr@ximian.com> - - * e-dbhash.c (string_to_dbt): memset everything to 0 - (md5_to_dbt): ditto - -2001-07-20 Rodrigo Moya <rodrigo@ximian.com> - - * e-categories-config.c (initialize_categories_config): use the 2 - new category icons (16_category_suppliers.png and - 16_category_time-and-expenses.png) - -2001-07-19 Rodrigo Moya <rodrigo@ximian.com> - - * e-categories-config.c (initialize_categories_config): use the 2 - new category icons - - * Makefile.am: s/imagedir/imagesdir - -2001-07-17 Rodrigo Moya <rodrigo@ximian.com> - - * e-categories-config.c (initialize_categories_config): generate - default configuration for icons-per-category the first time. And - use a global (for this file) Bonobo_ConfigDatabase - -2001-07-16 Rodrigo Moya <rodrigo@ximian.com> - - * e-categories-config.c (e_categories_config_get_icon_for): - (e_categories_config_get_icon_file_for): - (e_categories_config_set_icon_file_for): use GdkPixbuf to load images - -2001-07-16 Federico Mena Quintero <federico@ximian.com> - - * e-time-utils.c (parse_with_strptime): Generalized function for - trying a number of strptime() formats on a string. - (e_time_parse_time): Use parse_with_strptime(). - (e_time_parse_date): New function, analogous to the previous one, - but uses a number of date formats. - -2001-07-12 Federico Mena Quintero <federico@ximian.com> - - * e-time-utils.c (e_time_parse_date_and_time): If the string is - empty, clear the struct tm before returning. - -2001-07-12 Jon Trowbridge <trow@ximian.com> - - * e-html-utils.c: Added is_addr_char_no_pipes macro, which specifically - does not consider '|' ("pipe") to be a legal address character. - (email_address_extract): Use is_addr_char_no_pipes when looking for - e-mail addresses to turn into HTML links. (Bug #3940) - -2001-07-05 Not Zed <NotZed@Ximian.com> - - * e-memory.c: Added some malloc check stuff. - -2001-07-04 Rodrigo Moya <rodrigo@ximian.com> - - * e-categories-master-list-wombat.c (ecmlw_load): load all icons - and colors for each category - - (ecmlw_save): save all icons and categories associated with - each category - - * e-categories-config.c: use BonoboConf to store/retrieve settings, - and use ECategoriesMasterListWombat when creating a ECategories - dialog widget - -2001-07-02 Christopher James Lahey <clahey@ximian.com> - - * Makefile.am (libeutil_la_SOURCES): Added - e-categories-master-list-wombat.c and - e-categories-master-list-wombat.h. - (INCLUDES): Added $(BONOBO_CONF_CFLAGS). - - * e-categories-master-list-wombat.c, - e-categories-master-list-wombat.h: New class implementing a master - list that stores its state using bonobo-conf. - -2001-07-02 Rodrigo Moya <rodrigo@ximian.com> - - * e-categories-config.[ch]: new file for a set of functions for - managing category-related (icons, colors) configuration - -2001-07-01 Ettore Perazzoli <ettore@ximian.com> - - * e-request.c: New. - * e-request.h: New. - -2001-06-25 Jeffrey Stedfast <fejj@ximian.com> - - * e-sexp.c (term_eval_and): When ANDing two bools, don't use a - bitwise AND. - -2001-06-18 Dan Winship <danw@ximian.com> - - * Makefile.am: Split e-db3-utils and e-dbhash off into libedb3util - so eutil won't depend on db3. - -2001-06-15 Not Zed <NotZed@Ximian.com> - - * e-sexp.c (parse_values): REmove a silly hardcoded term limit, - oops forgot about that. - -2001-06-11 Damon Chaplin <damon@ximian.com> - - * e-time-utils.c (e_time_parse_date_and_time): skip any non-digits - while looking for dates and times. This should fix some translation - problems. Though there is still a problem with Japanese, where the - am/pm flag comes before the time so we will skip it incorrectly. - -2001-06-10 Damon Chaplin <damon@ximian.com> - - * e-time-utils.c (e_time_parse_date_and_time): - (e_time_parse_time): got rid of '%n' at end of each format string - for strptime. I don't know how I managed to put them in there. - -2001-05-31 Christopher James Lahey <clahey@ximian.com> - - * Makefile.am (INCLUDES): Added db3 cflags. - - * e-dbhash.c: Made this use db3. - - * e-db3-utils.c, e-db3-utils.h: New files with some helper - functions. - -2001-05-27 Dan Winship <danw@ximian.com> - - * e-gui-utils.c: Remove e_pixmaps_update (moved to libeshell) so - libeutil won't depend on bonobo. - -2001-05-19 Ettore Perazzoli <ettore@ximian.com> - - * e-host-utils.c (e_gethostbyname_r) - [HAVE_GETHOSTBYNAME_R && GETHOSTBYNAME_R_FIVE_ARGS]: Set `*herr' - to zero if the function returns a non-NULL pointer to the hostent. - According to the docs, a returned non-NULL hostent always means - "no error" no matter what the returned value of `herr' is. [And - in fact, at least on libc 2.2.3, trying to resolve `localhost' - sets herr to `HOST_NOT_FOUND' even if the name is resolved - correctly and the returned hostent is non-NULL.] - -2001-05-16 Dan Winship <danw@ximian.com> - - * e-html-utils.c (e_text_to_html_full): add - E_TEXT_TO_HTML_ESCAPE_8BIT to turn non-US-ASCII characters into - "?"s. - -2001-05-14 Jon Trowbridge <trow@ximian.com> - - * e-html-utils.c (is_citation): Check for bad utf8. - -2001-05-08 Dan Winship <danw@ximian.com> - - * e-path.c (e_path_find_folders): Walk a hierarchy using the - "/subfolders/" convention and call a callback for each folder - found. - -2001-05-01 Dan Winship <danw@ximian.com> - - * e-msgport.c (e_mutex_assert_locked): Debugging routine. (Only - works for recursive mutexes right now.) - - * e-html-utils.c (e_text_to_html_full): Don't use g_utf8_next_char - on text that isn't valid UTF8, since it won't work (and might even - get into an infinite loop). - -2001-04-29 Dan Winship <danw@ximian.com> - - * e-html-utils.c (email_address_extract): Make this smarter. Now - e_text_to_html_full calls it when it sees a '@', and - email_address_extract deals with scanning both forward and - backward to find the bounds of the email address. It's still - fooled by Message-IDs, but there's not a whole lot we can do - there... - -2001-04-26 Dan Winship <danw@ximian.com> - - * e-host-utils.c (e_gethostbyname_r): Make the Solaris and - no-gethostbyname_r implementations behave more like the Linux one. - Document. - - * Makefile.am (INCLUDES): Remove UNICODE_CFLAGS - (libeutil_la_LIBADD): Change UNICODE_LIBS to GAL_LIBS - -2001-04-26 Not Zed <NotZed@Ximian.com> - - * e-memory.c (e_poolv_get): Modified to match e_strv_get - behaviour. Assert on bad cases, and return "" rather than NULL - for empty/unset strings. - (e_poolv_new): Simplify the mutex cases, only have a single mutex - for mempool and hashtable references. - (e_poolv_set): Simplify mutex code. Fixed a #ifdef orde prob in - profile stuff. Always copy string to our own memory when we add - it to the hash, even if we free it; I think this would have led to - dangling references otherwise. - (e_poolv_destroy): Renamed from poolv_free, for consistency with - the rest of the allocators here. - (e_poolv_set): Add optional refcounting code here, not currently - enabled/used, but should make proper string collection work - easily. - (e_poolv_destroy): Unrefcount the strings here. - (e_poolv_cpy): Add refcounting code here. - - * e-memory.[ch]: Applied Jacob's patches <jacob@ximian.com> for - 'e-poolv' type, added his name to the authors list. - -2001-04-24 Dan Winship <danw@ximian.com> - - * e-html-utils.c (check_size): If the buffer is too small, making - it twice as big does not guarantee it will be big enough. "Duh". - Also, a bunch of the check_size calls don't seem to be taking - trailing NULs into account, so add in a +1 here. - -2001-04-24 Kjartan Maraas <kmaraas@gnome.org> - - * e-gui-utils.c, e-memory, e-msgport.c, e-pilot-map, e-sexp.c: - Added #include <glib.h> and move corresponding local headers - to the top to catch missing includes in them. Tip from clahey. - -2001-04-24 Chris Toshok <toshok@ximian.com> - - * e-host-utils.h: remove prototype for e_gethostbyname_init. - - * e-host-utils.c (e_gethostbyname_r): don't dynamically allocate - anything - store everything in the buffer that's passed in. Also, - stop using EMutex. Switch to a static GMutex (so we can - initialize it without having e_gethostbyname_init). - (e_gethostbyname_init): removed. - -2001-04-23 Jon Trowbridge <trow@ximian.com> - - * e-html-utils.c (e_text_to_html_full): Removed attempts to use - Radek's evil <DATA> hacks, which were just causing me - (and GtkHTML) grief. - -2001-04-23 Jon Trowbridge <trow@ximian.com> - - * e-host-utils.c: Include glib.h, so that the g_warning in - e_gethostbyname_r will be treated as a macro and not as an - unresolved symbol. - -2001-04-22 Chris Toshok <toshok@ximian.com> - - * Makefile.am (libeutil_la_SOURCES): add e-host-utils.[ch] - - * e-host-utils.c: new file, with e_gethostbyname_r. - - * e-host-utils.h: new file. - -2001-04-19 Dan Winship <danw@ximian.com> - - * e-html-utils.c (is_citation): ">From" is not a citation unless - the previous or following line is a citation. - (e_text_to_html_full): Update for is_citation change. Also, when - marking citations, unmangle mbox From-mangling. - -2001-04-15 Federico Mena Quintero <federico@ximian.com> - - * e-sexp.c (e_sexp_parse): Start parsing the sexp with - parse_value(), not parse_list(), because we may have immediate - values (e.g. "#f") as the whole sexp. - -2001-04-08 JP Rosevear <jpr@ximian.com> - - * Makefile.am: Setup up the conduit library building better so the - files get disted - -2001-04-06 Federico Mena Quintero <federico@ximian.com> - - * e-sexp.c (scanner_config): Added a question mark to the set of - valid characters for symbol names. - (parse_value): Fixed parsing of boolean values. - (parse_term_free): Added missing clause for ESEXP_TERM_BOOL. - -2001-04-04 Kjartan Maraas <kmaraas@gnome.org> - - * ename/test-ename-western-gtk.c: Fix headers. - -2001-04-03 Federico Mena Quintero <federico@ximian.com> - - * e-sexp.h (ESExpResultType): Added ESEXP_RES_TIME for time - values. - (ESExpResult): Added a "time_t value.time" field. - (ESExpTermType): Added ESEXP_TERM_TIME. - (ESExpTerm): Added a "time_t value.time" field. - - * e-sexp.c (e_sexp_result_free): Deal with time values. Also, be - more paranoid; added a default clause with g_assert_not_reached(). - (term_eval_lt): Deal with time values. - (term_eval_gt): Likewise. - (term_eval_eq): Likewise. - (term_eval_plus): Likewise. - (term_eval_sub): Likewise. - (e_sexp_term_eval): Likewise. - (eval_dump_result): Likewise. - (parse_dump_term): Likewise. - (parse_term_free): Likewise. - -2001-04-01 Gediminas Paulauskas <menesis@delfi.lt> - - * e-gui-utils.h: new type EPixmap, which is used to cache pixmaps for - bonobo components. use e_pixmaps_update to load icons into ui - component. - * e-gui-utils.c: implementation of EPixmap cache, moved here from - mail/folder-browser-factory.c. - -2001-03-31 Jon Trowbridge <trow@ximian.com> - - * e-url.c (e_url_shroud): Check that first_colon < last_at, - to prevent horrible things from happening. Removed spew. - (e_url_equal): Removed spew. - -2001-03-30 Jon Trowbridge <trow@ximian.com> - - * e-html-utils.c (e_text_to_html_full): Add support for converting - e-mail addresses to links. - (is_email_address): Added. Identifies e-mail addresses. - (email_address_extract): Added. Extracts a copy of the e-mail - address from the text. - - * e-html-utils.h (E_TEXT_TO_HTML_CONVERT_ADDRESSES): Added. - - * e-url.c (e_url_shroud): Added. Copy a url, replacing - any plaintext passwords with a single *. - (e_url_equal): Compare two urls, taking into account that - they may or may not be shrouded. - -2001-03-29 Kjartan Maraas <kmaraas@gnome.org> - - * e-corba-utils.h: Remove #include <glib.h> - * e-dialog-widgets.c: Shuffle some headers. - * e-dialog-widgets.h: Remove #include <libgnomeui/gnome-propertybox.h> - * e-gtk-utils.c: #include <gtk/gtksignal.h> - * e-gtk-utils.h: Replace #include <gtk/gtk.h> - * e-gui-utils.c: Replace #include <gnome.h> - * e-html-utils.c: Shuffle headers. - * e-iterator.c: Replace #include <gtk/gtk.h> - * e-iterator.h: Replace #include <gtk/gtk.h> - * e-list-iterator.c: Remove #include <gtk/gtk.h> - * e-list-iterator.h: Replace #include <gtk/gtk.h> - * e-list.c: Remove #include <gtk/gtk.h> - * e-list.h: Replace #include <gtk/gtk.h> - * e-memory.c: #include <string.h> and <stdlib.h> - * e-msgport.c: Move around some includes. s/%d/%ld/g in a printf() - call to fix a warning. - * e-pilot-map.c: #include <string.h>. Replace #include <gnome.h> - * e-pilot-util.c: Remove #include <gnome.h> - * e-sexp.c: Remove #include <glib.h> - * e-sexp.h: Replace #include <gtk/gtk.h> - * e-time-utils.c: #include <string.h> - * md5-utils.c: Shuffle headers. - * test-ename-western-gtk.c: Replace #include <gnome.h> - * test-ename-western.c: Same here. - -2001-03-20 Radek Doulik <rodo@ximian.com> - - * e-html-utils.c (e_text_to_html_full): new function, extracted - from e_text_to_html, added color parameter - -2001-03-19 Radek Doulik <rodo@ximian.com> - - * e-html-utils.c (e_text_to_html): support mark citation - - * e-html-utils.h (E_TEXT_TO_HTML_MARK_CITATION): added - E_TEXT_TO_HTML_MARK_CITATION - -2001-03-18 Damon Chaplin <damon@ximian.com> - - * e-time-utils.c (e_time_format_time): added function to format just - the time. - -2001-03-16 Dan Winship <danw@ximian.com> - - * e-path.c (e_path_to_physical): Fix a bug noticed by kmaraas - -2001-03-15 Dan Winship <danw@ximian.com> - - * e-html-utils.c (url_extract): Fix a bit: [mailto:foo] shouldn't - grab the ']' - -2001-03-12 JP Rosevear <jpr@ximian.com> - - * Makefile.am: update cflag macros - -2001-03-07 Dan Winship <danw@ximian.com> - - * e-html-utils.c (url_extract): Fix an off-by-one in the "is this - for real?" check so that "http:// " won't get URLified - -2001-03-04 Damon Chaplin <damon@ximian.com> - - * e-time-utils.[hc]: new files to contain functions to parse and - format dates and times for various calendar widgets. - -2001-03-01 Dan Winship <danw@ximian.com> - - * e-path.c (e_path_to_physical): New function to turn foo/bar into - foo/subfolders/bar. The inverse function doesn't exist yet because - I didn't need it. Also, if the shell were going to use this, we'd - need a few more tools... - - * Makefile.am (libeutil_la_SOURCES): Add e-path.[ch] - -2001-03-01 Not Zed <NotZed@Ximian.com> - - * e-sexp.c (e_sexp_encode_string): Make it handle a NULL string as - an empty string. - -2001-02-23 Not Zed <NotZed@Ximian.com> - - * e-msgport.c (e_thread_destroy): Wait a lot lot longer for - threads to finish. - : Turned off some of the debug. - -2001-02-08 Not Zed <NotZed@Ximian.com> - - * e-memory.c (EMemChunk): Changed to allocate raw blocks for the - data, and keep track of them with an array, this is so the native - malloc alignment is not lost at the allocation stage. - -2001-01-30 Not Zed <NotZed@Ximian.com> - - * e-msgport.c (e_thread_destroy): Turn on joining of cancelled threads. - (e_msgport_wait): Put a cleanup handler to clear the mp lock if it - happens in cond_wait, since it will be locked again. - -2001-01-29 Not Zed <NotZed@Ximian.com> - - * e-msgport.c (e_thread_put): If we have waiting threads, then - dont start a new one for the NEW case. - (thread_dispatch): For the NEW case, dont exit, just keep running, - waiting for a new message to come along. - (e_thread_destroy): When cleaning up NEW threads, cancel any - non-busy threads. - -2001-01-24 Not Zed <NotZed@Ximian.com> - - * e-sexp.h (ESExp): Add chunk allocators. - - * e-sexp.c: Removed some redundant debug printfs. - (e_sexp_term_eval): Dont allocate result till we have it. so we - can have a fatal error, and not leak it. - (term_eval_plus): If we have to abort, free our arguments. - (term_eval_sub): Same. - (parse_new_term): Renamed to parse_term_new for consistency. - Fixed callers. - (e_sexp_result_new): Add the esexp as an argument. Ouch, lots of - code to change for this. Allocate blocks from an ememchunk. - Fixed all callers. - (e_sexp_result_free): Same as above, free blocks from the - ememchunk. Fixed all callers. - (parse_term_new): - (parse_term_free): Similarly, add the esexp to the argument, and - alloc/free from memchunks. Fixed all local callers. - (e_sexp_init): Setup the memory chunk allocators. - (e_sexp_finalise): Destroy memchunk allocators. - -2001-01-23 Not Zed <NotZed@Ximian.com> - - * e-sexp.c (e_sexp_parse): Setup error return and return error on - parse error. - (parse_list): Fail if we have a problem. - (parse_value): Here too. - (fatal_error): Fatal error handling function, jumps back to the - top caller. - (term_eval_and): - (e_sexp_term_eval): - (term_eval_sub): - (term_eval_plus): - (term_eval_gt): - (term_eval_lt): - (term_eval_or): Fail on error. - (e_sexp_term_eval): Added a comment about where this can be - called, which is only from inside e_sexp_eval(). - (e_sexp_eval): Setup setjmp error handler. - (e_sexp_error): Error accessor function. - - * e-sexp.h: Added a longjmp environment to the structure, and an - error return to parse. - -2001-01-22 JP Rosevear <jpr@ximian.com> - - * e-dbhash.c (md5_to_dbt): New function, can't use strlen on the md5 - hash because it might have null chars in it. - (e_dbhash_add): use md5_to_dbt - -2001-01-19 JP Rosevear <jpr@ximian.com> - - * e-pilot-map.c (e_pilot_map_remove_by_pid): Remove an item by pid - (e_pilot_map_remove_by_uid): ditto for uid - - * e-pilot-map.h: new protos - -2001-01-17 Jason Leach <jasonleach@usa.net> - - * e-gtk-utils.c (gtk_radio_button_get_nth_selected): New function, - name describes it well. - (gtk_radio_button_select_nth): New function. - -2001-01-17 Federico Mena Quintero <federico@ximian.com> - - * e-dialog-widgets.[ch]: Ximianified. - -2001-01-15 JP Roseveaer <jpr@ximian.com> - - * e-pilot-util.c (e_pilot_utf8_from_pchar): Dup the string passed - in, not the temporary string. d'oh. - -2001-01-04 Dan Winship <danw@helixcode.com> - - * e-msgport.c: #define E_THREAD_NONE as ((pthread_t)~0) and use - that instead of ~0 throughout. (pthread_t is a pointer type on my - system, so there are lots of warnings without the cast.) - -2000-12-24 Not Zed <NotZed@HelixCode.com> - - * Merge from camel-mt-branch. - -2000-12-20 JP Rosevear <jpr@helixcode.com> - - * e-pilot-util.c (e_pilot_utf8_to_pchar): Check for null strings - (e_pilot_utf8_from_pchar): ditto - -2000-12-19 JP Rosevear <jpr@helixcode.com> - - * e-pilot-util.c (e_pilot_utf8_to_pchar): Convert utf8 strings to - pilot character set - (e_pilot_utf8_from_pchar): vice versa - - * Makefile.am: Conditionally build e-pilot-util.[hc] because - they depend on pilot-link stuff - -2000-12-23 Not Zed <NotZed@HelixCode.com> - - * e-msgport.c (e_dlist_length): Util function. - (e_thread_new): Another new thread primitive. This one is a - re-usable 'server thread' thingy. - -2000-12-21 Not Zed <NotZed@HelixCode.com> - - * Makefile.am (libeutil_la_SOURCES): Added msgport stuff. - - * e-msgport.[ch]: Some thread primitives. e_dlist, a - double-linked list (ok, not a thread primitive, but used in ...), - e_msgport - an asynchronous, non-copying message passing - rendesvous port, and e_mutex, a portably configurable mutex. - -2000-12-19 Not Zed <NotZed@HelixCode.com> - - * e-sexp.c: Make the code compile without being a gtk object (the - old code can still be built as a gtk object if required). Also - removed some dead code. - (e_sexp_ref): New function to ref if we're not a gkt object. - (e_sexp_unref): Same for unref. - -2000-12-13 Larry Ewing <lewing@helixcode.com> - - * e-html-utils.c (e_text_to_html): make sure we actually make - enough space for " ". - -2000-12-08 Federico Mena Quintero <federico@helixcode.com> - - * e-dialog-widgets.c (e_dialog_editable_get): Updated - documentation comment. - -2000-12-04 Ettore Perazzoli <ettore@helixcode.com> - - * e-corba-utils.h: New. - - * e-corba-utils.c: New. - (e_safe_corba_string): New. - -2000-11-30 Not Zed <NotZed@HelixCode.com> - - * e-memory.c (e_strv_new): Fix typename of args (for all funcs). - (e_strv_set_ref): Assert the index is in range. - (e_strv_set_ref_free): " - (e_strv_set): " - (e_strv_get): " - -2000-11-29 Not Zed <NotZed@HelixCode.com> - - * e-sexp.c (term_eval_lt): Plug a memleak, need to free results - from term_eval(). - (term_eval_gt): - (term_eval_eq): - -2000-11-27 Not Zed <NotZed@HelixCode.com> - - * e-memory.c (e_mempool_new): Added some locking to global data. - This should make the interfaces mt-safe, although each object is - only per-thread safe. - -2000-11-22 Not Zed <NotZed@HelixCode.com> - - * e-memory.c (e_mempool_alloc): If we dont get a big enough chunk - in the first node, give up. Otherwise we spend too much time - searching. - (e_mempool_strdup): Doh, and allocate enough for the terminating - NUL at that. - (e_strv_set_ref_free): New function, set a reference to a string - that is then owned/free'd by the strv. - (e_strv_destroy): If there are any strings to destroy, free them - here. - -2000-11-21 Not Zed <NotZed@HelixCode.com> - - * e-memory.c (e_memchunk_alloc0): New function to allocate a - zero'd out chunk. - (e_mempool_strdup): New function to strdup into a mempool. - -2000-11-20 Not Zed <NotZed@HelixCode.com> - - * e-memory.[ch]: New routines for fast memory management and - compact string array storage. - - * Makefile.am (libeutil_la_SOURCES): Added e-memory.[ch]. - -2000-11-09 JP Rosevear <jpr@helixcode.com> - - * e-dbhash.h: oops thats func not *func - - * e-dbhash.c (e_dbhash_foreach_key): Memset the data DBT to 0 - -2000-11-07 JP Rosevear <jpr@helixcode.com> - - * Makefile.am: Build e-dbhash.[hc] - - * e-dbhash.[hc]: New routines to manage a db database on disk that - contains md5 hashed data and indexed by uids. Provides comparison - functions and such so the caller does not have to do the md5 bits. - -200-10-30 Kjartan Maraas <kmaraas@gnome.org> - - * e-dialog-widgets.c: #include <string.h> to quench warning. - * e-sexp.c: #include <stdlib.h> for same reason. - -2000-10-27 <jpr@helixcode.com> - - * Makefile.am: build md5-utils - - * md5-utils.c: Make part of util, get rid of camel stream util - function include string.h - - * md5-utils.h: ditto - -2000-10-27 <jpr@helixcode.com> - - * e-pilot-map.c (e_pilot_map_lookup_uid): Return null if no - pnode was found. - -2000-10-27 JP Rosevear <jpr@helixcode.com> - - * e-pilot-map.c (map_sax_start_element): Get archive field while - parsing - (map_write_foreach): Write out archive field - (e_pilot_map_pid_is_archived): implement - (e_pilot_map_uid_is_archived): ditto - (e_pilot_map_insert): Insert new node structures - (e_pilot_map_lookup_pid): Take into account the list is now - a list of structures - (e_pilot_map_lookup_uid): ditto - -2000-10-26 Michael Meeks <michael@helixcode.com> - - * ename/e-address-western.c (e_address_western_is_postal): - unsigned chars. - - * ename/e-name-western.c (e_name_western_get_one_prefix_at_str): - cast to unsigned char. - -2000-10-25 Dan Winship <danw@helixcode.com> - - * e-html-utils.c (e_text_to_html): Deal properly with URLs at the - end of the buffer. (The old code would append a "�" to the - text.) - -2000-10-23 JP Rosevear <jpr@helixcode.com> - - * e-pilot-map.c (e_pilot_map_lookup_pid): Lookup a pid by uid. - (e_pilot_map_lookup_uid): Lookup a uid by pid. - Now this is wrapped, we can store archive info internally - - * e-pilot-map.h: New accessor prototypes - -2000-10-23 Dan Winship <danw@helixcode.com> - - * ename/Makefile.am (INCLUDES): Remove unused GNOMELOCALEDIR - setting. - -2000-10-23 JP Rosevear <jpr@helixcode.com> - - * e-pilot-map.c: Operate with EPilotMap structure so things are - abstract to the caller - (e_pilot_map_pid_is_archived): Infrastructure for marking records - as archived - (e_pilot_map_uid_is_archived): ditto - - * e-pilot-map.h: Add more to public interface, including EPilotMap - structure - -2000-10-23 JP Rosevear <jpr@helixcode.com> - - * e-pilot-map.c: Pilot map functions grabbed from existing conduits - - * e-pilot-map.h (e_pilot_map_write): Header - -2000-10-18 Dan Winship <danw@helixcode.com> - - * e-html-utils.c (e_text_to_html): If unicode_get_utf8 returns -1, - assume it was actually undeclared iso-8859-1 text. - -2000-10-17 Jesse Pavel <jpavel@helixcode.com> - - * ename/e-address-western.c: made the routines use the stardard - e_strstrcase instead of the included function that existed - earlier. - -2000-10-11 Iain Holmes <iain@helixcode.com> - - * ename/e-address-western.c (e_address_western_parse): g_strconcat - needs to be NULL terminated or it goes funny. - -Tue Sep 26 16:48:49 2000 Christopher James Lahey <clahey@helixcode.com> - - * Makefile.am: Added $(EXTRA_GNOME_CFLAGS). - -2000-09-25 Jeffrey Stedfast <fejj@helixcode.com> - - * Makefile.am: add ename as a SUBDIR - -2000-09-18 Christopher James Lahey <clahey@helixcode.com> - - * e-list-iterator.c, e-list.c, e-list.h: Made e_list a bit more - reentrant. If a iterator gets its data pulled out from under it - while in a loop, it goes back one so that loops will be able to - continue. - -2000-09-18 Christopher James Lahey <clahey@helixcode.com> - - * Makefile.am: Removed all the files moved to gal. - - * e-dialog-widgets.c: Fixed the #include lines to deal properly - with gal. - - * e-gui-utils.c, e-gui-utils.h: Removed all of the functionality - that was moved to gal. - - * e-canvas-utils.c, e-canvas-utils.h, e-canvas-vbox.c, - e-canvas-vbox.h, e-canvas.c, e-canvas.h, e-cursors.c, e-cursors.h, - e-font.c, e-font.h, e-popup-menu.c, e-popup-menu.h, e-printable.c, - e-printable.h, e-unicode.c, e-unicode.h, e-util.c, e-util.h, - e-xml-utils.c, e-xml-utils.h: Moved to gal. - -2000-09-13 Christopher James Lahey <clahey@helixcode.com> - - * e-font.c: Fixed an uninitialized variable. - -2000-09-12 Lauris Kaplinski <lauris@helixcode.com> - - * e-unicode.c (e_utf8_to_gtk_string_sized): Use underscores - for untranslatable characters - (e_utf8_from_gtk_string_sized): Ditto - -2000-09-12 Dan Winship <danw@helixcode.com> - - * e-font.c (e_font_from_gdk_font): Change this a bit so that if - you pass it a bold font, it puts that in font->bold and finds a - lighter font for font->font (if it can). This is for themes like - Metal where the default font is bold. - (find_variants): renamed from find_best_bold - -2000-09-11 Dan Winship <danw@helixcode.com> - - * e-font.c (find_best_bold): Thou shalt leave space for the - trailing \0. - - * e-util.c (e_strstrcase): The return value should not be - const. (Well, unless the input was, but you can't know that.) - -2000-09-11 Christopher James Lahey <clahey@helixcode.com> - - * e-unicode.c, e-unicode.h: Added e_utf8_gtk_editable_get_text and - e_utf8_gtk_editable_set_text. - -2000-09-11 Lauris Kaplinski <lauris@helixcode.com> - - * e-font.c: Try to find real bold variant of X font, fall - to double stroke only if not found - -2000-09-10 Ettore Perazzoli <ettore@helixcode.com> - - * e-gtk-utils.c: New. - (e_gtk_signal_connect_full_while_alive): New. - - * e-gtk-utils.h: New. - -2000-09-08 Lauris Kaplinski <lauris@helixcode.com> - - * e-font.c: Use experimental 16-bit font stuff for EFonts - -2000-09-08 Dan Winship <danw@helixcode.com> - - * e-popup-menu.h: remove consts from the EPopupMenu structure: the - caller may want to modify its own EPopupMenu before calling - e_popup_menu_run. - -2000-09-07 Lauris Kaplinski <lauris@helixcode.com> - - * e-dialog-widgets.c (e_dialog_editable_get): Use UTF-8 - (e_dialog_editable_set): Use UTF-8 - - * e-font.c (translate_encoding): More encodings - (e_gdk_font_encoding): Use experimental stuff - - * e-unicode.* (e_utf8_gtk_editable_insert_text): New wrapper - -2000-09-07 Federico Mena Quintero <federico@helixcode.com> - - * e-canvas.c (emit_event): Remove incorrect optimization. Events - are read-only! - -2000-09-04 Lauris Kaplinski <lauris@helixcode.com> - - * e-unicode.c: Added new font code, but comment it out now - * e-font.h, e-font.c: Test code for font analyzing - -2000-09-02 Lauris Kaplinski <lauris@helixcode.com> - - * e-unicode.h, e-unicode.c: New functions - e_utf8_gtk_clist_append, e_utf8_gtk_clist_set_text - e_unicode_init - -2000-08-31 Lauris Kaplinski <lauris@helixcode.com> - - * e-html-utils.c (e_text_to_html): Use UTF-8 - - * e-unicode.h: - * e-unicode.c (g_unichar_to_utf8): glib 1.3 function - (gdk_keyval_to_unicode): gdk 1.3 function - (e_utf8_from_gdk_event_key): Use keyval, not string - -2000-08-30 Lauris Kaplinski <lauris@helixcode.com> - - * e-unicode.h: #define gnome_font_get_size and - gnome_font_get_width, and gnome_font_lookup_default, - if compiling with gnome-print 0.20 - -2000-08-30 Dan Winship <danw@helixcode.com> - - * Makefile.am (libeutil_la_LIBADD): make e-util depend on - libunicode - - * e-popup-menu.c (make_item): Use GtkMenuItem rather than - GtkPixmapMenuItem for items with no pixmaps, so that if the whole - menu is pixmapless, you don't get a column of blank pixmaps. - -2000-08-24 Lauris Kaplinski <lauris@helixcode.com> - - * e-unicode.h: - * e-unicode.c (e_utf8_gtk_menu_item_new_with_label): New wrapper - -2000-08-23 Lauris Kaplinski <lauris@helixcode.com> - - * e-unicode.h: - * e-unicode.c (e_utf8_strstrcase): New function - -2000-08-23 Federico Mena Quintero <federico@helixcode.com> - - * e-dialog-widgets.c (e_dialog_editable_set): Constify. - -2000-08-22 Lauris Kaplinski <lauris@helixcode.com> - - * e-unicode.h: - * e-unicode.c: e_utf8_gtk_editable_get_chars - e_utf8_gtk_entry_get_text - e_utf8_gtk_entry_set_text - e_utf8_to_gtk_string: New convenience functions - -2000-08-22 Lauris Kaplinski <lauris@helixcode.com> - - * e-unicode.h: - * e-unicode.c: Some convenience functions to deal with Gtk+ and UTF-8 - - * Makefile.am: Added e-unicode.h, e-unicode.c - -2000-08-21 Lauris Kaplinski <lauris@helixcode.com> - - * e-font.h: - * e-font.c: Changed UTF-8 syntax from char-based to byte-based - -2000-08-21 Peter Williams <peterw@helixcode.com> - - * e-html-utils.c (e_text_to_html): Fix a booboo in the tab - expansion code (didn't use the new value of 'out'). - -2000-08-19 Lauris Kaplinski lauris@helixcode.com - - * e-font.h: #define e_font_height(f) to save some space - -2000-08-19 Lauris Kaplinski lauris@helixcode.com - - * e-font.h: - * e-font.c: Thin wrapper around GdkFont to deal with UTF-8 directly - Also handles bold/italic styling - -2000-08-14 Peter Williams <peterw@helixcode.com> - - * e-sexp.c (scanner_config): Add "-" to be an acceptable - first character for an operation -- yaaay subtraction! - -2000-08-11 Peter Williams <peterw@helixcode.com> - - * e-html-utils.c (e_text_to_html): Fix the tab expansion - for when the length would exceed the ten characters that - we allocated. - -2000-08-10 Dan Winship <danw@helixcode.com> - - * e-setup.[ch]: Remove. The shell tells the components where - the evolution homedir is now. - - * Makefile.am (libeutil_la_SOURCES): Remove e-setup.c - - * e-html-utils.c (e_text_to_html): If converting both spaces and - newlines, then convert tabs too. The joys of pseudo-<PRE>. - -2000-08-09 Christopher James Lahey <clahey@helixcode.com> - - * e-popup-menu.c: Fix the bug where it truncates the last item - -2000-08-09 Christopher James Lahey <clahey@helixcode.com> - - * e-popup-menu.c: Ooops. - -2000-08-09 Christopher James Lahey <clahey@helixcode.com> - - * e-util.c, e-util.h: Added uncompiled e_read_uri function. - -2000-08-09 Christopher James Lahey <clahey@helixcode.com> - - * e-popup-menu.c, e-popup-menu.h: Added a hide_mask argument to - the two popup menu functions. - -2000-08-07 Christopher James Lahey <clahey@helixcode.com> - - * e-gui-utils.c, e-gui-utils.c: Added - e_container_change_tab_order. - -2000-07-27 Peter Williams <peterw@helixcode.com> - - * e-canvas.c (e_canvas_destroy): Chain the - destroy handler. - -2000-07-25 Peter Williams <peterw@helixcode.com> - - * e-canvas.c (emit_event): Don't bother with - dereferencing the event pointer. - (e_canvas_item_set_cursor): Reference our selection - item; print a debug message. Deref when destroying - (e_canvas_item_add_selection): Same. - (e_canvas_item_remove_selection): Same. - -2000-07-25 Peter Williams <peterw@helixcode.com> - - * Makefile.am (libeutil_static_la_LDFLAGS): Build both libraries - (a typo didn't build libeutil.la, only -static.) - -2000-07-25 Seth Alves <alves@hungry.com> - - * Makefile.am (libeutil_static_la_LDFLAGS): build static version - of library for conduit to use - -2000-07-25 Christopher James Lahey <clahey@helixcode.com> - - * e-util.c, e-util.h: Added a bunch of e_marshal functions. - -2000-07-12 Christopher James Lahey <clahey@helixcode.com> - - * e-util.c, e-util.h: Added e_strstrcase function. - -2000-07-11 Christopher James Lahey <clahey@helixcode.com> - - * e-canvas-vbox.c: Removed some debugging printfs. - - * e-canvas.c (e_canvas_unrealize): Call parent unrealize method. - -2000-07-10 Ettore Perazzoli <ettore@helixcode.com> - - * e-sexp.c (eval_dump_result): `#if 0'ed out. - - * e-popup-menu.h (e_popup_menu_create): New prototype. - -2000-07-10 Dan Winship <danw@helixcode.com> - - * e-html-utils.c: Fix warnings. - -2000-07-08 Christopher James Lahey <clahey@helixcode.com> - - * e-list.c, e-list.h: Added e_list_duplicate. - -2000-07-07 Christopher James Lahey <clahey@helixcode.com> - - * e-util.c, e-util.h: Added e_strsplit to work around a bug in - g_strsplit. - -2000-07-07 Christopher James Lahey <clahey@helixcode.com> - - * e-iterator.c, e-iterator.h, e-list-iterator.c, - e-list-iterator.h: Added last and insert functions. - -2000-07-06 Federico Mena Quintero <federico@helixcode.com> - - * e-dialog-widgets.c: Added docstrings. This file did not have - them at all. EEEEEEK! - -2000-07-05 Dan Winship <danw@helixcode.com> - - * e-sexp.c (e_sexp_parse): Kill debugging message - -2000-07-03 Christopher James Lahey <clahey@helixcode.com> - - * e-iterator.c, e-iterator.h, e-list-iterator.c, - e-list-iterator.h, e-list.c, e-list.h: New list class with - iterators. - - * e-canvas.c: Made it so that you don't get the same selection in - the selection list more than once. - -2000-07-01 Ettore Perazzoli <ettore@helixcode.com> - - * e-gui-utils.h: #include <libgnomeui/gnome-messagebox.h>. It's - needed to be able to pass an appropriate @type arg to - `e_notice()'. - -2000-06-29 Jody Goldberg <jgoldberg@home.com> - - * e-canvas.c (e_canvas_init) : Init the InputContext members - (e_canvas_class_init) : Add a handler for unrealize. - (e_canvas_focus_in) : enable the input context. - (e_canvas_focus_out) : enable the input context. - (e_canvas_realize) : Create an input context. - (e_canvas_unrealize) : New function to release the input context. - -2000-06-28 Dan Winship <danw@helixcode.com> - - * e-html-utils.c (url_extract): add ")" to the set of characters - to back up over at the end of a potential URL. - -2000-06-27 Ettore Perazzoli <ettore@helixcode.com> - - * e-dialog-widgets.c (get_toggle_value): Use `value_var', not - `value'. - -2000-06-27 Ettore Perazzoli <ettore@helixcode.com> - - * Makefile.am (INCLUDES): `-I$(top_srcdir)' to fix compilation - with builddir != srcdir. - -2000-06-26 Christopher James Lahey <clahey@helixcode.com> - - * Makefile.am: Added e-canvas-vbox.c and e-canvas-vbox.h. - - * e-canvas-vbox.c, e-canvas-vbox.h: New canvas object to act like - a vbox using the reflow system. - -2000-06-20 Christopher James Lahey <clahey@helixcode.com> - - * e-canvas.c, e-canvas.h: Added a variable to keep track of the - cursor. Set the cursor when selection_add is called. Properly - unset the cursor at the right times. - -2000-06-20 Christopher James Lahey <clahey@helixcode.com> - - * e-canvas.c: Grab the focus when setting the cursor. - -2000-06-20 Christopher James Lahey <clahey@helixcode.com> - - * e-canvas.c, e-canvas.h: Built a system for doing selections - and/or a cursor in canvas. - -2000-06-13 Christopher James Lahey <clahey@helixcode.com> - - * e-util.c, e-util.h: Changed the needed e_marshal functions. - - * e-printable.c, e-printable.h: Added a quantize parameter to - e_printable_height. Also, added a e_printable_will_fit function. - -2000-06-10 Christopher James Lahey <clahey@helixcode.com> - - * Makefile.am: Added e-printable.c and e-printable.h. - - * e-printable.c, e-printable.h: This new class is a printing - context. Other classes return an EPrintable which represents a - context for printing that object. - - * e-util.c, e-util.h: Added - e_marshal_NONE__OBJECT_DOUBLE_DOUBLE_BOOL and - e_marshal_DOUBLE__OBJECT_DOUBLE_DOUBLE. - -2000-06-01 Christopher James Lahey <clahey@helixcode.com> - - * e-util.c: Fixed e_marshal_INT__INT_INT_POINTER. - -2000-06-01 Christopher James Lahey <clahey@helixcode.com> - - * e-util.c, e-util.h: Added e_marshal_INT__INT_INT_POINTER. - -2000-06-01 Dan Winship <danw@helixcode.com> - - * e-util.c (g_int_compare): Duh! -1 != 1. :) - -2000-06-01 Christopher James Lahey <clahey@helixcode.com> - - * e-sexp.c (e_sexp_term_eval): g_return_val_if_fail to prevent a crash. - -2000-05-30 Not Zed <NotZed@HelixCode.com> - - * e-sexp.c (e_sexp_encode_bool): Utility function to build a bool - as part of an expression string. - (e_sexp_encode_string): Likewise for strings. - -2000-05-30 Christopher James Lahey <clahey@helixcode.com> - - * e-canvas-utils.c, e-canvas-utils.h: Added - e_canvas_item_show_area which makes sure that a particular area of - a given item is in the scroll area. - -2000-05-30 Federico Mena Quintero <federico@helixcode.com> - - * e-dialog-widgets.c (hook_radio): Use the exported function to - set the value. - (get_radio_value): Likewise. - (hook_option_menu): Likewise. - (get_option_menu_value): Likewise. - (hook_toggle): Likewise. - (get_toggle_value): Likewise. - (hook_spin_button): Likewise. - (get_spin_button_value): Likewise. - (hook_editable): Likewise. - (get_editable_value): Likewise. - (e_dialog_radio_set): Radio buttons are prepended to their parent - group's list, so we need to flip the index around when - getting/setting the value. - (e_dialog_radio_get): Likewise. - -2000-05-27 Federico Mena Quintero <federico@helixcode.com> - - * e-dialog-widgets.c (e_dialog_editable_set): Moved over from - event-editor-utils.c. - (e_dialog_editable_get): Likewise. - (e_dialog_toggle_set): Likewise. - (e_dialog_toggle_get): Likewise. - (e_dialog_spin_set): Likewise. - (e_dialog_spin_get_double): Likewise. - (e_dialog_spin_get_int): Likewise. - (e_dialog_option_menu_set): Likewise, and added a value map. - (e_dialog_option_menu_get): Likewise. - (e_dialog_dateedit_set): Likewise. - (e_dialog_dateedit_get): Likewise. - (e_dialog_radio_set): New function. - (e_dialog_radio_get): New function. - -2000-05-24 Christopher James Lahey <clahey@helixcode.com> - - * e-paned.c, e-paned.h: Removed. - -2000-05-23 Federico Mena Quintero <federico@helixcode.com> - - * e-dialog-widgets.c (get_radio_value): Implemented. Amazing that - one has to go through so much pain to get a stupid value from - GTK+. - (hook_option_menu): Implemented. Same complaint. - (get_toggle_value): Implemented. - (get_spin_button_value): Implemented. - (get_entry_value): Implemented. - (e_dialog_widget_hook_value): Function to hook a widget to the - variable it will modify. - (e_dialog_get_values): Function to feed the variables from a - dialog's widgets. - (e_dialog_xml_widget_hook_value): Function to hook a widget from - a Glade file. - -2000-05-23 Christopher James Lahey <clahey@helixcode.com> - - * e-util.c, e-util.h: Added e_write_file. - -2000-05-19 Federico Mena Quintero <federico@helixcode.com> - - * e-dialog-widgets.[ch]: New files with utilities for hooking up - widgets in Glade-generated dialogs. - - * Makefile.am (libeutil_la_SOURCES): Added e-dialog-widgets.[ch]. - -2000-05-19 Christopher James Lahey <clahey@helixcode.com> - - * e-gui-utils.c, e-gui-utils.h: Added e_container_foreach_leaf. - -2000-05-18 Christopher James Lahey <clahey@helixcode.com> - - * Makefile.am: Add imagesdir support. - - * e-gui-utils.c, e-gui-utils.h: Added e_create_image_widget for - glade use. - -2000-05-16 Christopher James Lahey <clahey@helixcode.com> - - * e-xml-utils.c: xmlGetProp appears to return malloced memory. - Thus we must free it. - -2000-05-15 Ettore Perazzoli <ettore@helixcode.com> - - * e-util.c (e_free_string_list): New function. - -2000-05-14 Christopher James Lahey <clahey@helixcode.com> - - * e-util.c, e-util.h: Added e_strdup_strip which returns a copy of - the string with the leading and trailing spaces removed. - -2000-05-11 NotZed <NotZed@HelixCode.com> - - * e-sexp.c (e_sexp_finalise): Destroy the g_scanner when cleaning up. - (e_sexp_finalise): Free symbol table on finalise. - -2000-05-09 Christopher James Lahey <clahey@helixcode.com> - - * e-canvas.c: Remove reflow idle when being destroyed. - -2000-05-06 Christopher James Lahey <clahey@helixcode.com> - - * e-html-utils.c: Got rid of some warnings. - - * e-util.c, e-util.h: Added e_read_file which takes a filename and - returns a newly allocated string containing the contents of that - file. - -2000-05-03 Ettore Perazzoli <ettore@helixcode.com> - - * e-util.h: #include <glib.h> and <gtk/gtktypeutils.h>. - - * e-util.c (e_free_object_list): New utility function. - -2000-05-02 Damon Chaplin <damon@helixcode.com> - - * e-canvas.c (e_canvas_focus_in): - (e_canvas_focus_out): set and reset the GTK_HAS_FOCUS flag. We now get - focus_out events correctly. - -2000-05-02 NotZed <NotZed@HelixCode.com> - - * e-sexp.c (e_sexp_finalise): Free the parse tree if we have one. - (e_sexp_parse): If we already have a parse tree, free it. - -2000-05-02 Matt Loper <matt@helixcode.com> - - * Makefile.am: set G_LOG_DOMAIN. - -2000-05-01 Ettore Perazzoli <ettore@helixcode.com> - - * e-xml-utils.c, e-xml-utils.h: Constified all the functions. - -2000-04-27 Dan Winship <danw@helixcode.com> - - * e-html-utils.c (e_text_to_html): Moved here from the mailer, - since it's of general use, and the composer needs it too. - -2000-04-24 Miguel de Icaza <miguel@helixcode.com> - - * e-popup-menu.c: New file. Implements easy to use popup menus. - -2000-04-24 Matt Loper <matt@helixcode.com> - - * e-paned.c: New file. Makes a GtkPaned with more than two - children. - * e-paned.h: same. - - * Makefile.am: added e-paned.[ch]. - -2000-04-19 Christopher James Lahey <clahey@helixcode.com> - - * e-xml-utils.c, e-xml-utils.h: Added - e_xml_get_child_by_name_by_lang. - -2000-04-16 Anders Carlsson <andersca@gnu.org> - - * e-canvas.c (e_canvas_class_init): Add realize. - (e_canvas_realize): Set the back pixmap to NULL to reduce flicker. - -2000-04-14 Christopher James Lahey <clahey@helixcode.com> - - * e-xml-utils.c: Fixing a warning. - -2000-04-14 Christopher James Lahey <clahey@helixcode.com> - - * e-xml-utils.c: Add g_return_if_fails. - -2000-04-12 Miguel de Icaza <miguel@gnu.org> - - * e-cursors.c (e_cursor_get): Prevent next hacker to get bitten by this. - -2000-04-10 Christopher James Lahey <clahey@helixcode.com> - - * e-canvas.c: Added proper keyboard focus handling. - -2000-04-06 Matt Loper <matt@helixcode.com> - - * e-setup.c (e_setup_base_dir): Get/set Evolution's base directory - via gnome-config. - (mkdir_if_necessary): New function. - (e_setup_base_dir): Use mkdir_if_necessary(). - -2000-03-22 NotZed <NotZed@HelixCode.com> - - * e-util/e-sexp.h: Formatting cleanup. - -2000-03-07 NotZed <NotZed@HelixCode.com> - - * e-util/Makefile.am (libeutil_la_SOURCES): s-sexp.h -> e-sexp.h. - -2000-03-12 Christopher James Lahey <clahey@helixcode.com> - - * e-util/e-canvas.c, e-util/e-canvas.h: Fixed some bugs here to - speed up reflow and to make it fail less often. - -2000-03-10 Christopher James Lahey <clahey@helixcode.com> - - * e-util/e-canvas.c, e-util/e-canvas.h: Designed a new system for - doing hierarchical displays in the canvas. Adds an extra idle - loop to the canvas system. - -2000-03-05 Christopher James Lahey <clahey@helixcode.com> - - * e-util/e-xml-utils.c: Fixed e_xml_set_integer_prop_by_name. - -2000-03-04 Christopher James Lahey <clahey@helixcode.com> - - * e-util/e-xml-utils.c, e-util/e-xml-utils.h: Added - e_xml_set_integer_prop_by_name. - -2000-02-28 NotZed <NotZed@HelixCode.com> - - * e-util/e-sexp.[ch]: Added. moved from filter-sexp.[ch] - - * e-util/Makefile.am (libeutil_a_SOURCES): Add e-sexp. - (noinst_LTLIBRARIES): Changed to a libtool library. - -2000-02-24 Christopher James Lahey <clahey@helixcode.com> - - * e-util/e-xml-utils.c, e-util/e-xml-utils.h: Added - e_xml_get_integer_prop_by_name. - - * e-util/Makefile.am: Added e-util.c. - - * e-util/e-util.h: Added e-util.c functions. - - * e-util/e-util.c: New file for compare functions - -2000-02-24 Christopher James Lahey <clahey@helixcode.com> - - * e-util/e-canvas-utils.h: Fixed the comment at the top and added - #ifndef __E_CANVAS_UTILS__. - - * e-util/Makefile.am: Added e-xml-utils.c and - e-xml-utils.h. - - * e-util/e-xml-utils.h, e-util/e-xml-utils.c: Added files for some - xml utilities. - - * e-util/e-util.h: Added type EFocus which describes which - direction the focus will be coming from. - -2000-02-23 Dan Winship <danw@helixcode.com> - - * e-util/e-setup.c (e_setup_base_dir): Make ~/evolution mode 700 - rather than mode 600 (and use the symbolic name rather than the - number). - -2000-02-09 Christopher James Lahey <clahey@helixcode.com> - - * e-util/Makefile.am: Add canvas utilities to libeutil. - diff --git a/e-util/Makefile.am b/e-util/Makefile.am index 9c09b9c6a2..a258c64f01 100644 --- a/e-util/Makefile.am +++ b/e-util/Makefile.am @@ -15,7 +15,6 @@ eutilinclude_HEADERS = \ e-alert.h \ e-alert-activity.h \ e-alert-dialog.h \ - e-bconf-map.h \ e-binding.h \ e-bit-array.h \ e-categories-config.h \ @@ -28,7 +27,6 @@ eutilinclude_HEADERS = \ e-extensible.h \ e-extension.h \ e-file-utils.h \ - e-folder-map.h \ e-html-utils.h \ e-icon-factory.h \ e-import.h \ @@ -38,6 +36,7 @@ eutilinclude_HEADERS = \ e-mktemp.h \ e-module.h \ e-non-intrusive-error-dialog.h \ + e-poolv.h \ e-print.h \ e-plugin.h \ e-plugin-ui.h \ @@ -96,7 +95,6 @@ libeutil_la_SOURCES = \ e-alert.c \ e-alert-activity.c \ e-alert-dialog.c \ - e-bconf-map.c \ e-binding.c \ e-bit-array.c \ e-categories-config.c \ @@ -109,7 +107,6 @@ libeutil_la_SOURCES = \ e-extensible.c \ e-extension.c \ e-file-utils.c \ - e-folder-map.c \ e-html-utils.c \ e-icon-factory.c \ e-import.c \ @@ -119,6 +116,7 @@ libeutil_la_SOURCES = \ e-mktemp.c \ e-module.c \ e-non-intrusive-error-dialog.c \ + e-poolv.c \ e-plugin.c \ e-plugin-ui.c \ e-plugin-util.c \ @@ -208,7 +206,6 @@ errordir = $(privdatadir)/errors EXTRA_DIST = \ e-system.error.xml \ $(pilot_sources) \ - ChangeLog.pre-1-4 \ e-marshal.list BUILT_SOURCES = $(MARSHAL_GENERATED) $(error_DATA) diff --git a/e-util/e-alert-dialog.c b/e-util/e-alert-dialog.c index 39b5a5f778..6f96116c61 100644 --- a/e-util/e-alert-dialog.c +++ b/e-util/e-alert-dialog.c @@ -223,7 +223,7 @@ e_alert_dialog_constructed (GObject *obj) gtk_label_set_selectable((GtkLabel *)w, TRUE); gtk_label_set_line_wrap((GtkLabel *)w, TRUE); gtk_label_set_markup((GtkLabel *)w, out->str); - GTK_WIDGET_UNSET_FLAGS (w, GTK_CAN_FOCUS); + gtk_widget_set_can_focus (w, FALSE); g_string_free(out, TRUE); if (e_alert_get_scroll (alert)) { gtk_scrolled_window_add_with_viewport ((GtkScrolledWindow *)scroll, w); diff --git a/e-util/e-bconf-map.c b/e-util/e-bconf-map.c deleted file mode 100644 index d0bd526715..0000000000 --- a/e-util/e-bconf-map.c +++ /dev/null @@ -1,537 +0,0 @@ -/* - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) version 3. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with the program; if not, see <http://www.gnu.org/licenses/> - * - * - * Authors: - * Jeffrey Stedfast <fejj@ximian.com> - * - * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com) - * - */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif - -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - -#include <glib.h> - -#include <libxml/tree.h> -#include <libxml/parser.h> -#include <libxml/xmlmemory.h> - -#include "e-bconf-map.h" - -#define d(x) - -static gchar hexnib[256] = { - -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,-1,-1,-1,-1,-1,-1, - -1,10,11,12,13,14,15,16,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,10,11,12,13,14,15,16,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, - -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, -}; - -gchar * -e_bconf_hex_decode (const gchar *val) -{ - const guchar *p; - gchar *o, *res; - - o = res = g_malloc (strlen (val) / 2 + 1); - for (p = (const guchar *)val; (p[0] && p[1]); p += 2) - *o++ = (hexnib[p[0]] << 4) | hexnib[p[1]]; - *o = 0; - - return res; -} - -gchar * -e_bconf_url_decode (const gchar *val) -{ - const guchar *p = (const guchar *) val; - gchar *o, *res, c; - - o = res = g_malloc (strlen (val) + 1); - while (*p) { - c = *p++; - if (c == '%' - && hexnib[p[0]] != -1 && hexnib[p[1]] != -1) { - *o++ = (hexnib[p[0]] << 4) | hexnib[p[1]]; - p+=2; - } else - *o++ = c; - } - *o = 0; - - return res; -} - -xmlNodePtr -e_bconf_get_path (xmlDocPtr doc, const gchar *path) -{ - xmlNodePtr root; - gchar *val; - gint found; - - root = doc->children; - if (strcmp ((gchar *)root->name, "bonobo-config") != 0) { - g_warning ("not bonobo-config xml file"); - return NULL; - } - - root = root->children; - while (root) { - if (!strcmp ((gchar *)root->name, "section")) { - val = (gchar *)xmlGetProp (root, (const guchar *)"path"); - found = val && strcmp (val, path) == 0; - xmlFree (val); - if (found) - break; - } - root = root->next; - } - - return root; -} - -xmlNodePtr -e_bconf_get_entry (xmlNodePtr root, const gchar *name) -{ - xmlNodePtr node = root->children; - gint found; - gchar *val; - - while (node) { - if (!strcmp ((gchar *)node->name, "entry")) { - val = (gchar *)xmlGetProp (node, (const guchar *)"name"); - found = val && strcmp (val, name) == 0; - xmlFree (val); - if (found) - break; - } - node = node->next; - } - - return node; -} - -gchar * -e_bconf_get_value (xmlNodePtr root, const gchar *name) -{ - xmlNodePtr node = e_bconf_get_entry (root, name); - gchar *prop, *val = NULL; - - if (node && (prop = (gchar *)xmlGetProp (node, (const guchar *)"value"))) { - val = g_strdup (prop); - xmlFree (prop); - } - - return val; -} - -gchar * -e_bconf_get_bool (xmlNodePtr root, const gchar *name) -{ - gchar *val, *res; - - if ((val = e_bconf_get_value (root, name))) { - res = g_strdup (val[0] == '1' ? "true" : "false"); - g_free (val); - } else - res = NULL; - - return res; -} - -gchar * -e_bconf_get_long (xmlNodePtr root, const gchar *name) -{ - gchar *val, *res; - - if ((val = e_bconf_get_value (root, name))) { - res = g_strdup (val); - g_free (val); - } else - res = NULL; - - return res; -} - -gchar * -e_bconf_get_string (xmlNodePtr root, const gchar *name) -{ - gchar *val, *res; - - if ((val = e_bconf_get_value (root, name))) { - res = e_bconf_hex_decode (val); - g_free (val); - } else - res = NULL; - - return res; -} - -/* lookup functions */ -typedef gchar * (* bconf_lookup_func) (xmlNodePtr root, const gchar *name, e_bconf_map_t *nap); - -static gchar * -bconf_lookup_bool (xmlNodePtr root, const gchar *name, e_bconf_map_t *map) -{ - return e_bconf_get_bool (root, name); -} - -static gchar * -bconf_lookup_long (xmlNodePtr root, const gchar *name, e_bconf_map_t *map) -{ - return e_bconf_get_long (root, name); -} - -static gchar * -bconf_lookup_string (xmlNodePtr root, const gchar *name, e_bconf_map_t *map) -{ - return e_bconf_get_string (root, name); -} - -static gchar * -bconf_lookup_enum (xmlNodePtr root, const gchar *name, e_bconf_map_t *map) -{ - gint index = 0, i; - gchar *val; - - if ((val = e_bconf_get_value (root, name))) { - index = atoi (val); - g_free (val); - } - - for (i = 0; map->child[i].from; i++) { - if (i == index) - return g_strdup (map->child[i].from); - } - - return NULL; -} - -static bconf_lookup_func lookup_table[] = { - bconf_lookup_bool, bconf_lookup_long, bconf_lookup_string, bconf_lookup_enum -}; - -static gchar * -get_name (const gchar *in, gint index) -{ - GString *out = g_string_new (""); - gchar c, *res; - - while ((c = *in++)) { - if (c == '%') { - c = *in++; - switch (c) { - case '%': - g_string_append_c (out, '%'); - break; - case 'i': - g_string_append_printf (out, "%d", index); - break; - } - } else { - g_string_append_c (out, c); - } - } - - res = out->str; - g_string_free (out, FALSE); - - return res; -} - -static void -build_xml (xmlNodePtr root, e_bconf_map_t *map, gint index, xmlNodePtr source) -{ - gchar *name, *value; - xmlNodePtr node; - - while (map->type != E_BCONF_MAP_END) { - if ((map->type & E_BCONF_MAP_MASK) == E_BCONF_MAP_CHILD) { - node = xmlNewChild (root, NULL, (guchar *)map->to, NULL); - build_xml (node, map->child, index, source); - } else { - name = get_name (map->from, index); - value = lookup_table[(map->type & E_BCONF_MAP_MASK) - 1] (source, name, map); - - d(printf ("key '%s=%s' -> ", name, value)); - - if (map->type & E_BCONF_MAP_CONTENT) { - if (value && value[0]) - xmlNewTextChild (root, NULL, (guchar *)map->to, (guchar *)value); - } else { - xmlSetProp (root, (guchar *)map->to, (guchar *)value); - } - - g_free (value); - g_free (name); - } - map++; - } -} - -gint -e_bconf_import_xml_blob (GConfClient *gconf, xmlDocPtr config_xmldb, e_bconf_map_t *map, - const gchar *bconf_path, const gchar *gconf_path, - const gchar *name, const gchar *idparam) -{ - xmlNodePtr source; - gint count = 0, i; - GSList *list, *l; - gchar *val; - - source = e_bconf_get_path (config_xmldb, bconf_path); - if (source) { - list = NULL; - if ((val = e_bconf_get_value (source, "num"))) { - count = atoi (val); - g_free (val); - } - - d(printf("Found %d blobs at %s\n", count, bconf_path)); - - for (i = 0; i < count; i++) { - xmlDocPtr doc; - xmlNodePtr root; - xmlChar *xmlbuf; - gint n; - - doc = xmlNewDoc ((const guchar *)"1.0"); - root = xmlNewDocNode (doc, NULL, (guchar *)name, NULL); - xmlDocSetRootElement (doc, root); - - /* This could be set with a MAP_UID type ... */ - if (idparam) { - gchar buf[16]; - - sprintf (buf, "%d", i); - xmlSetProp (root, (guchar *)idparam, (guchar *)buf); - } - - build_xml (root, map, i, source); - - xmlDocDumpMemory (doc, &xmlbuf, &n); - xmlFreeDoc (doc); - - list = g_slist_append (list, xmlbuf); - } - - gconf_client_set_list (gconf, gconf_path, GCONF_VALUE_STRING, list, NULL); - - while (list) { - l = list->next; - xmlFree (list->data); - g_slist_free_1 (list); - list = l; - } - } else { - g_warning ("could not find '%s' in old config database, skipping", bconf_path); - } - - return 0; -} - -static gint gconf_type[] = { GCONF_VALUE_BOOL, GCONF_VALUE_BOOL, GCONF_VALUE_INT, GCONF_VALUE_STRING, GCONF_VALUE_STRING }; - -gint -e_bconf_import (GConfClient *gconf, xmlDocPtr config_xmldb, e_gconf_map_list_t *remap_list) -{ - gchar *path, *val, *tmp; - e_gconf_map_t *map; - xmlNodePtr source; - GSList *list, *l; - gchar buf[32]; - gint i, j, k; - - /* process all flat config */ - for (i = 0; remap_list[i].root; i++) { - d(printf ("Path: %s\n", remap_list[i].root)); - if (!(source = e_bconf_get_path (config_xmldb, remap_list[i].root))) - continue; - - map = remap_list[i].map; - for (j = 0; map[j].from; j++) { - if (map[j].type & E_GCONF_MAP_LIST) { - /* collapse a multi-entry indexed field into a list */ - list = NULL; - k = 0; - do { - path = get_name (map[j].from, k); - val = e_bconf_get_value (source, path); - d(printf ("finding path '%s' = '%s'\n", path, val)); - g_free (path); - if (val) { - switch (map[j].type & E_GCONF_MAP_MASK) { - case E_GCONF_MAP_BOOL: - case E_GCONF_MAP_INT: - list = g_slist_append (list, GINT_TO_POINTER (atoi (val))); - break; - case E_GCONF_MAP_STRING: - d(printf (" -> '%s'\n", e_bconf_hex_decode (val))); - list = g_slist_append (list, e_bconf_hex_decode (val)); - break; - } - - g_free (val); - k++; - } - } while (val); - - if (list) { - path = g_strdup_printf ("/apps/evolution/%s", map[j].to); - gconf_client_set_list (gconf, path, gconf_type[map[j].type & E_GCONF_MAP_MASK], list, NULL); - g_free (path); - if ((map[j].type & E_GCONF_MAP_MASK) == E_GCONF_MAP_STRING) - g_slist_foreach (list, (GFunc) g_free, NULL); - g_slist_free (list); - } - - continue; - } else if (map[j].type == E_GCONF_MAP_ANYLIST) { - val = NULL; - } else { - if (!(val = e_bconf_get_value (source, map[j].from))) - continue; - } - - d(printf (" %s = '%s' -> %s [%d]\n", - map[j].from, - val == NULL ? "(null)" : val, - map[j].to, - map[j].type)); - - path = g_strdup_printf ("/apps/evolution/%s", map[j].to); - switch (map[j].type) { - case E_GCONF_MAP_BOOL: - gconf_client_set_bool (gconf, path, atoi (val), NULL); - break; - case E_GCONF_MAP_BOOLNOT: - gconf_client_set_bool (gconf, path, !atoi (val), NULL); - break; - case E_GCONF_MAP_INT: - gconf_client_set_int (gconf, path, atoi (val), NULL); - break; - case E_GCONF_MAP_STRING: - tmp = e_bconf_hex_decode (val); - gconf_client_set_string (gconf, path, tmp, NULL); - g_free (tmp); - break; - case E_GCONF_MAP_SIMPLESTRING: - gconf_client_set_string (gconf, path, val, NULL); - break; - case E_GCONF_MAP_FLOAT: - gconf_client_set_float (gconf, path, strtod (val, NULL), NULL); - break; - case E_GCONF_MAP_STRLIST: { - gchar *v = e_bconf_hex_decode (val); - gchar **t = g_strsplit (v, " !<-->!", 8196); - - list = NULL; - for (k = 0; t[k]; k++) { - list = g_slist_append (list, t[k]); - d(printf (" [%d] = '%s'\n", k, t[k])); - } - - gconf_client_set_list (gconf, path, GCONF_VALUE_STRING, list, NULL); - g_slist_free (list); - g_strfreev (t); - g_free (v); - break; } - case E_GCONF_MAP_ANYLIST: { - xmlNodePtr node = source->children; - list = NULL; - - /* find the entry node */ - while (node) { - if (!strcmp ((gchar *)node->name, "entry")) { - gint found; - - if ((tmp = (gchar *)xmlGetProp (node, (const guchar *)"name"))) { - found = strcmp ((gchar *)tmp, map[j].from) == 0; - xmlFree (tmp); - if (found) - break; - } - } - - node = node->next; - } - - /* find the the any block */ - if (node) { - node = node->children; - while (node) { - if (strcmp ((gchar *)node->name, "any") == 0) - break; - node = node->next; - } - } - - /* skip to the value inside it */ - if (node) { - node = node->children; - while (node) { - if (strcmp ((gchar *)node->name, "value") == 0) - break; - node = node->next; - } - } - - if (node) { - node = node->children; - while (node) { - if (strcmp ((gchar *)node->name, "value") == 0) - list = g_slist_append (list, xmlNodeGetContent (node)); - node = node->next; - } - } - - /* & store */ - if (list) { - gconf_client_set_list (gconf, path, GCONF_VALUE_STRING, list, NULL); - while (list) { - l = list->next; - xmlFree (list->data); - g_slist_free_1 (list); - list = l; - } - } - - break; } - case E_GCONF_MAP_COLOUR: - sprintf (buf, "#%06x", atoi (val) & 0xffffff); - gconf_client_set_string (gconf, path, buf, NULL); - break; - } - - /* FIXME: handle errors */ - g_free (path); - g_free (val); - } - } - - return 0; -} diff --git a/e-util/e-bconf-map.h b/e-util/e-bconf-map.h deleted file mode 100644 index 181533dde4..0000000000 --- a/e-util/e-bconf-map.h +++ /dev/null @@ -1,95 +0,0 @@ -/* - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) version 3. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with the program; if not, see <http://www.gnu.org/licenses/> - * - * - * Authors: - * Jeffrey Stedfast <fejj@ximian.com> - * - * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com) - * - */ - -#ifndef __E_BCONF_MAP_H__ -#define __E_BCONF_MAP_H__ - -#include <gconf/gconf-client.h> - -#include <libxml/tree.h> - -G_BEGIN_DECLS - -enum { - E_BCONF_MAP_END = 0, /* end of table */ - E_BCONF_MAP_BOOL, /* bool -> prop of name 'to' value true or false */ - E_BCONF_MAP_LONG, /* long -> prop of name 'to' value a long */ - E_BCONF_MAP_STRING, /* string -> prop of name 'to' */ - E_BCONF_MAP_ENUM, /* long/bool -> prop of name 'to', with the value indexed into the child map table's from field */ - E_BCONF_MAP_CHILD, /* a new child of name 'to' */ - E_BCONF_MAP_MASK = 0x3f, - E_BCONF_MAP_CONTENT = 0x80 /* if set, create a new node of name 'to' instead of a property */ -}; - -typedef struct _e_bconf_map { - const gchar *from; - const gchar *to; - gint type; - struct _e_bconf_map *child; -} e_bconf_map_t; - -gchar *e_bconf_hex_decode (const gchar *val); -gchar *e_bconf_url_decode (const gchar *val); - -xmlNodePtr e_bconf_get_path (xmlDocPtr doc, const gchar *path); -xmlNodePtr e_bconf_get_entry (xmlNodePtr root, const gchar *name); - -gchar *e_bconf_get_value (xmlNodePtr root, const gchar *name); -gchar *e_bconf_get_bool (xmlNodePtr root, const gchar *name); -gchar *e_bconf_get_long (xmlNodePtr root, const gchar *name); -gchar *e_bconf_get_string (xmlNodePtr root, const gchar *name); - -gint e_bconf_import_xml_blob (GConfClient *gconf, xmlDocPtr config_xmldb, e_bconf_map_t *map, - const gchar *bconf_path, const gchar *gconf_path, - const gchar *name, const gchar *idparam); - -enum { - E_GCONF_MAP_BOOL, - E_GCONF_MAP_BOOLNOT, - E_GCONF_MAP_INT, - E_GCONF_MAP_STRING, - E_GCONF_MAP_SIMPLESTRING, /* a non-encoded string */ - E_GCONF_MAP_COLOUR, - E_GCONF_MAP_FLOAT, /* bloody floats, who uses floats ... idiots */ - E_GCONF_MAP_STRLIST, /* strings separated to !<-->! -> gconf list */ - E_GCONF_MAP_ANYLIST, /* corba sequence corba string -> gconf list */ - E_GCONF_MAP_MASK = 0x7f, - E_GCONF_MAP_LIST = 0x80 /* from includes a %i field for the index of the key, to be converted to a list of type MAP_* */ -}; - -typedef struct { - const gchar *from; - const gchar *to; - gint type; -} e_gconf_map_t; - -typedef struct { - const gchar *root; - e_gconf_map_t *map; -} e_gconf_map_list_t; - -gint e_bconf_import (GConfClient *gconf, xmlDocPtr config_xmldb, e_gconf_map_list_t *remap_list); - -G_END_DECLS - -#endif /* __E_BCONF_MAP_H__ */ diff --git a/e-util/e-charset.c b/e-util/e-charset.c index d2b7a91eeb..59c023c13d 100644 --- a/e-util/e-charset.c +++ b/e-util/e-charset.c @@ -76,24 +76,32 @@ typedef struct { * not a lot of point in using, say, ISO-8859-3, if anything that can * read that can read UTF8 too. */ -/* To Translators: Character set "Logical Hebrew" */ static ECharset charsets[] = { { "ISO-8859-6", E_CHARSET_ARABIC, NULL }, { "ISO-8859-13", E_CHARSET_BALTIC, NULL }, { "ISO-8859-4", E_CHARSET_BALTIC, NULL }, { "ISO-8859-2", E_CHARSET_CENTRAL_EUROPEAN, NULL }, + /* Translators: Character set "Chinese, Traditional" */ { "Big5", E_CHARSET_CHINESE, N_("Traditional") }, + /* Translators: Character set "Chinese, Traditional" */ { "BIG5HKSCS", E_CHARSET_CHINESE, N_("Traditional") }, + /* Translators: Character set "Chinese, Traditional" */ { "EUC-TW", E_CHARSET_CHINESE, N_("Traditional") }, + /* Translators: Character set "Chinese, Simplified" */ { "GB18030", E_CHARSET_CHINESE, N_("Simplified") }, + /* Translators: Character set "Chinese, Simplified" */ { "GB2312", E_CHARSET_CHINESE, N_("Simplified") }, + /* Translators: Character set "Chinese, Simplified" */ { "HZ", E_CHARSET_CHINESE, N_("Simplified") }, + /* Translators: Character set "Chinese, Simplified" */ { "ISO-2022-CN", E_CHARSET_CHINESE, N_("Simplified") }, { "KOI8-R", E_CHARSET_CYRILLIC, NULL }, { "Windows-1251", E_CHARSET_CYRILLIC, NULL }, + /* Translators: Character set "Cyrillic, Ukrainian" */ { "KOI8-U", E_CHARSET_CYRILLIC, N_("Ukrainian") }, { "ISO-8859-5", E_CHARSET_CYRILLIC, NULL }, { "ISO-8859-7", E_CHARSET_GREEK, NULL }, + /* Translators: Character set "Hebrew, Visual" */ { "ISO-8859-8", E_CHARSET_HEBREW, N_("Visual") }, { "ISO-2022-JP", E_CHARSET_JAPANESE, NULL }, { "EUC-JP", E_CHARSET_JAPANESE, NULL }, diff --git a/e-util/e-datetime-format.c b/e-util/e-datetime-format.c index 0595d58add..37226d471a 100644 --- a/e-util/e-datetime-format.c +++ b/e-util/e-datetime-format.c @@ -206,10 +206,13 @@ format_relative_date (time_t tvalue, time_t ttoday, const struct tm *value, cons else res = g_strdup (_("Yesterday")); } else { - if (future) - res = g_strdup_printf (_("%d days from now"), diff); - else - res = g_strdup_printf (_("%d days ago"), diff); + if (future) { + /* Translators: %d is replaced with a number of days. It's always greater than 1 */ + res = g_strdup_printf (ngettext ("%d day from now", "%d days from now", diff), diff); + } else { + /* Translators: %d is replaced with a number of days. It's always greater than 1 */ + res = g_strdup_printf (ngettext ("%d day ago", "%d days ago", diff), diff); + } } } diff --git a/e-util/e-file-utils.c b/e-util/e-file-utils.c index 571154733b..e647b8deb1 100644 --- a/e-util/e-file-utils.c +++ b/e-util/e-file-utils.c @@ -210,108 +210,3 @@ e_file_replace_contents_finish (GFile *file, return TRUE; } -/** - * e_fsutils_usage: - * @path: a file path - * - * Calculate the amount of disk space used by a given path. - * - * Return value: The number of 1024 byte blocks used by the - * filesystem. - **/ -glong e_fsutils_usage(const gchar *inpath) -{ - GDir *dir; - const gchar *d; - long size = 0; - GSList *paths; - - /* iterative, depth-first scan, because i can ... */ - paths = g_slist_prepend(NULL, g_strdup(inpath)); - - while (paths) { - gchar *path = paths->data; - - paths = g_slist_remove_link(paths, paths); - - dir = g_dir_open(path, 0, NULL); - if (dir == NULL) { - g_free(path); - goto fail; - } - - while ((d = g_dir_read_name(dir))) { - gchar *full_path; - struct stat st; - - full_path = g_build_filename(path, d, NULL); - if (g_stat(full_path, &st) == -1) { - g_free(full_path); - g_dir_close(dir); - g_free(path); - goto fail; - } else if (S_ISDIR(st.st_mode)) { - paths = g_slist_prepend(paths, full_path); - full_path = NULL; - } else if (S_ISREG(st.st_mode)) { - /* This is in 512 byte blocks. st_blksize is page size on linux, - on *BSD it might be significant. */ -#ifndef G_OS_WIN32 - size += st.st_blocks/2; -#endif - } - - g_free(full_path); - } - - g_dir_close(dir); - g_free(path); - } - - return size; - -fail: - g_slist_foreach(paths, (GFunc)g_free, NULL); - g_slist_free(paths); - - return -1; -} - -/** - * e_fsutils_avail: - * @path: a file path - * - * Find the available disk space at the given path. - * - * Return value: -1 if it could not be determined, otherwise the - * number of disk blocks, expressed as system-independent, 1024 byte - * blocks. - **/ -glong -e_fsutils_avail(const gchar *path) -{ -#if defined(HAVE_STATVFS) - struct statvfs stfs; - - if (statvfs(path, &stfs) == -1) - return -1; - - /* Assumes that frsize === power of 2 */ - if (stfs.f_frsize >= 1024) - return stfs.f_bavail * (stfs.f_frsize / 1024); - else - return stfs.f_bavail / (1024 / stfs.f_frsize); -#elif defined(HAVE_STATFS) - struct statfs stfs; - - if (statfs(path, &stfs) == -1) - return -1; - - /* For BSD this isn't clear, it may be dependent on f_bsize */ - return stfs.f_bavail / 2; -#else - errno = ENOSYS; - return -1; -#endif -} - diff --git a/e-util/e-file-utils.h b/e-util/e-file-utils.h index 147b9b5b79..e1e8b29872 100644 --- a/e-util/e-file-utils.h +++ b/e-util/e-file-utils.h @@ -41,9 +41,6 @@ gboolean e_file_replace_contents_finish (GFile *file, gchar **new_etag, GError **error); -glong e_fsutils_usage (const gchar *path); -glong e_fsutils_avail (const gchar *path); - G_END_DECLS #endif /* E_FILE_UTILS_H */ diff --git a/e-util/e-folder-map.c b/e-util/e-folder-map.c deleted file mode 100644 index 7d775bed8a..0000000000 --- a/e-util/e-folder-map.c +++ /dev/null @@ -1,187 +0,0 @@ -/* - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) version 3. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with the program; if not, see <http://www.gnu.org/licenses/> - * - * - * Authors: - * Jeffrey Stedfast <fejj@ximian.com> - * - * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com) - * - */ - -#include <config.h> - -#include <sys/types.h> -#include <sys/stat.h> -#include <unistd.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - -#include <libxml/tree.h> -#include <libxml/parser.h> -#include <libxml/xmlmemory.h> - -#include <libedataserver/e-xml-utils.h> - -#include "e-folder-map.h" - -#define d(x) - -static gboolean -is_type_folder (const gchar *metadata, const gchar *search_type) -{ - xmlNodePtr node; - xmlDocPtr doc; - gchar *type; - - doc = e_xml_parse_file (metadata); - if (!doc) { - g_warning ("Cannot parse '%s'", metadata); - return FALSE; - } - - if (!(node = xmlDocGetRootElement (doc))) { - g_warning ("'%s' corrupt: document contains no root node", metadata); - xmlFreeDoc (doc); - return FALSE; - } - - if (!node->name || strcmp ((gchar *)node->name, "efolder") != 0) { - g_warning ("'%s' corrupt: root node is not 'efolder'", metadata); - xmlFreeDoc (doc); - return FALSE; - } - - node = node->children; - while (node != NULL) { - if (node->name && !strcmp ((gchar *)node->name, "type")) { - type = (gchar *)xmlNodeGetContent (node); - if (!strcmp (type, search_type)) { - xmlFreeDoc (doc); - xmlFree (type); - - return TRUE; - } - - xmlFree (type); - - break; - } - - node = node->next; - } - - xmlFreeDoc (doc); - - return FALSE; -} - -static void -e_folder_map_dir (const gchar *dirname, const gchar *type, GSList **dir_list) -{ - gchar *path; - const gchar *name; - GDir *dir; - GError *error = NULL; - - path = g_build_filename (dirname, "folder-metadata.xml", NULL); - if (!g_file_test (path, G_FILE_TEST_IS_REGULAR)) { - g_free (path); - return; - } - - if (!is_type_folder (path, type)) { - g_free (path); - goto try_subdirs; - } - - d(g_message ("Found '%s'", dirname)); - *dir_list = g_slist_prepend (*dir_list, g_strdup (dirname)); - - g_free (path); - - try_subdirs: - - path = g_build_filename (dirname, "subfolders", NULL); - if (!g_file_test (path, G_FILE_TEST_EXISTS | G_FILE_TEST_IS_DIR)) { - g_free (path); - return; - } - - if (!(dir = g_dir_open (path, 0, &error))) { - g_warning ("cannot open '%s': %s", path, error->message); - g_error_free (error); - g_free (path); - return; - } - - while ((name = g_dir_read_name (dir))) { - gchar *full_path; - - if (*name == '.') - continue; - - full_path = g_build_filename (path, name, NULL); - if (!g_file_test (full_path, G_FILE_TEST_EXISTS | G_FILE_TEST_IS_DIR)) { - g_free (full_path); - continue; - } - - e_folder_map_dir (full_path, type, dir_list); - g_free (full_path); - } - - g_dir_close (dir); - - g_free (path); -} - -GSList * -e_folder_map_local_folders (const gchar *local_dir, const gchar *type) -{ - const gchar *name; - GDir *dir; - GSList *dir_list = NULL; - GError *error = NULL; - - if (!(dir = g_dir_open (local_dir, 0, &error))) { - g_warning ("cannot open '%s': %s", local_dir, error->message); - g_error_free (error); - return NULL; - } - - while ((name = g_dir_read_name (dir))) { - gchar *full_path; - - if (*name == '.') - continue; - - full_path = g_build_filename (local_dir, name, NULL); - d(g_message ("Looking in %s", full_path)); - if (!g_file_test (full_path, G_FILE_TEST_EXISTS | G_FILE_TEST_IS_DIR)) { - g_free (full_path); - continue; - } - - e_folder_map_dir (full_path, type, &dir_list); - - g_free (full_path); - } - - g_dir_close (dir); - - return dir_list; -} diff --git a/e-util/e-import.c b/e-util/e-import.c index 4475344018..14485633c1 100644 --- a/e-util/e-import.c +++ b/e-util/e-import.c @@ -216,6 +216,32 @@ e_import_get_widget (EImport *import, } /** + * e_import_get_preview_widget: + * @import: an #EImport + * @target: Target of interest + * @im: Importer to get a preview widget of + * + * Gets a widget that the importer uses to preview data to be + * imported. This widget should be packed into a container + * widget. It should not be shown_all. + * + * Return value: NULL if the importer doesn't support preview. + **/ +GtkWidget * +e_import_get_preview_widget (EImport *import, + EImportTarget *target, + EImportImporter *im) +{ + g_return_val_if_fail (im != NULL, NULL); + g_return_val_if_fail (target != NULL, NULL); + + if (!im->get_preview) + return NULL; + + return im->get_preview (import, target, im); +} + +/** * e_import_complete: * @import: an #EImport * @target: Target just completed (unused currently) diff --git a/e-util/e-import.h b/e-util/e-import.h index affc364a4b..57bb79450d 100644 --- a/e-util/e-import.h +++ b/e-util/e-import.h @@ -78,6 +78,8 @@ enum _e_import_target_t { * @supported: Callback to see if this target is supported by the importer. * @get_widget: A widget factory for this importer, if it needs any extra information in the assistant. It will update the target. * @import: Run the import. + * @cancel: Cancel the import. + * @get_preview: Callback to create a preview widget for just importing data. * @user_data: User data for the callbacks; * * Base importer description. @@ -91,6 +93,7 @@ struct _EImportImporter { EImportWidgetFunc get_widget; EImportImportFunc import; EImportImportFunc cancel; + EImportWidgetFunc get_preview; gpointer user_data; @@ -199,6 +202,9 @@ void e_import_cancel (EImport *import, GtkWidget * e_import_get_widget (EImport *import, EImportTarget *target, EImportImporter *importer); +GtkWidget * e_import_get_preview_widget (EImport *import, + EImportTarget *target, + EImportImporter *im); void e_import_status (EImport *import, EImportTarget *target, const gchar *what, diff --git a/e-util/e-logger.c b/e-util/e-logger.c index dd151b6009..fa2d548b23 100644 --- a/e-util/e-logger.c +++ b/e-util/e-logger.c @@ -171,8 +171,8 @@ logger_class_init (ELoggerClass *class) PROP_NAME, g_param_spec_string ( "name", - _("Name"), - _("Name of the logger"), + "Name", + "Name of the logger", "anonymous", G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); diff --git a/e-util/e-marshal.list b/e-util/e-marshal.list index 823005bac8..ab270d2f34 100644 --- a/e-util/e-marshal.list +++ b/e-util/e-marshal.list @@ -20,10 +20,6 @@ INT:INT,INT,BOXED INT:INT,POINTER,INT,BOXED INT:OBJECT,BOXED INT:POINTER -NONE:BOXED,STRING -NONE:BOXED,STRING,INT -NONE:BOXED,STRING,STRING -NONE:BOXED,STRING,STRING,INT,STRING,STRING,STRING NONE:INT,INT NONE:INT,INT,BOXED NONE:INT,INT,OBJECT @@ -41,6 +37,10 @@ NONE:LONG,LONG NONE:OBJECT,BOOLEAN NONE:OBJECT,DOUBLE,DOUBLE,BOOLEAN NONE:OBJECT,OBJECT +NONE:OBJECT,STRING +NONE:OBJECT,STRING,INT +NONE:OBJECT,STRING,STRING +NONE:OBJECT,STRING,STRING,INT,STRING,STRING,STRING NONE:POINTER,INT NONE:POINTER,INT,INT,INT,INT NONE:POINTER,INT,OBJECT diff --git a/e-util/e-module.c b/e-util/e-module.c index b61f5e7bdb..17c048e2d3 100644 --- a/e-util/e-module.c +++ b/e-util/e-module.c @@ -191,8 +191,8 @@ module_class_init (EModuleClass *class) PROP_FILENAME, g_param_spec_string ( "filename", - _("Filename"), - _("The filename of the module"), + "Filename", + "The filename of the module", NULL, G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); diff --git a/e-util/e-plugin-util.c b/e-util/e-plugin-util.c index c40d67650b..c49ec3691a 100644 --- a/e-util/e-plugin-util.c +++ b/e-util/e-plugin-util.c @@ -221,7 +221,7 @@ e_plugin_util_add_entry (GtkWidget *parent, const gchar *label, ESource *source, } if (GTK_IS_TABLE (parent)) - row = GTK_TABLE (parent)->nrows; + g_object_get (parent, "n-rows", &row, NULL); if (label) { lbl = gtk_label_new_with_mnemonic (label); @@ -279,6 +279,7 @@ e_plugin_util_add_check (GtkWidget *parent, const gchar *label, ESource *source, { GtkWidget *check; const gchar *value; + guint row; g_return_val_if_fail (parent == NULL || GTK_IS_TABLE (parent) || GTK_IS_CONTAINER (parent), NULL); g_return_val_if_fail (label != NULL, NULL); @@ -303,7 +304,7 @@ e_plugin_util_add_check (GtkWidget *parent, const gchar *label, ESource *source, gtk_widget_show (check); if (parent && GTK_IS_TABLE (parent)) { - gint row = GTK_TABLE (parent)->nrows; + g_object_get (parent, "n-rows", &row, NULL); gtk_table_attach (GTK_TABLE (parent), check, 1, 2, row , row + 1, GTK_FILL, 0, 0, 0); } else if (parent) { @@ -395,7 +396,7 @@ e_plugin_util_add_refresh (GtkWidget *parent, const gchar *label, ESource *sourc g_return_val_if_fail (*source_property != 0, NULL); if (parent) - row = GTK_TABLE (parent)->nrows; + g_object_get (parent, "n-rows", &row, NULL); value = e_source_get_property (source, source_property); if (!value) { diff --git a/e-util/e-plugin.c b/e-util/e-plugin.c index 453fdea643..2b85f61c84 100644 --- a/e-util/e-plugin.c +++ b/e-util/e-plugin.c @@ -292,8 +292,8 @@ ep_class_init (EPluginClass *class) EP_PROP_ENABLED, g_param_spec_boolean ( "enabled", - _("Enabled"), - _("Whether the plugin is enabled"), + "Enabled", + "Whether the plugin is enabled", TRUE, G_PARAM_READWRITE)); } diff --git a/e-util/e-poolv.c b/e-util/e-poolv.c new file mode 100644 index 0000000000..acd0a1a452 --- /dev/null +++ b/e-util/e-poolv.c @@ -0,0 +1,146 @@ +/* + * e-poolv.c + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) version 3. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with the program; if not, see <http://www.gnu.org/licenses/> + * + */ + +#include "e-poolv.h" + +#include <string.h> +#include <camel/camel.h> + +struct _EPoolv { + guchar length; + gchar *s[1]; +}; + +static GHashTable *poolv_pool; +static CamelMemPool *poolv_mempool; + +G_LOCK_DEFINE_STATIC (poolv); + +/** + * e_poolv_new: + * @size: The number of elements in the poolv, maximum of 254 elements. + * + * Create a new #EPoolv: a string vector which shares a global string + * pool. An #EPoolv can be used to work with arrays of strings which + * save memory by eliminating duplicated allocations of the same string. + * + * This is useful when you have a log of read-only strings that do not + * go away and are duplicated a lot, such as email headers. + * + * Returns: a new #EPoolv + **/ +EPoolv * +e_poolv_new (guint size) +{ + EPoolv *poolv; + + g_return_val_if_fail (size < 255, NULL); + + poolv = g_malloc0 (sizeof (*poolv) + (size - 1) * sizeof (gchar *)); + poolv->length = size; + + G_LOCK (poolv); + + if (!poolv_pool) + poolv_pool = g_hash_table_new (g_str_hash, g_str_equal); + + if (!poolv_mempool) + poolv_mempool = camel_mempool_new ( + 32 * 1024, 512, CAMEL_MEMPOOL_ALIGN_BYTE); + + G_UNLOCK (poolv); + + return poolv; +} + +/** + * e_poolv_set: + * @poolv: pooled string vector + * @index: index in vector of string + * @str: string to set + * @freeit: whether the caller is releasing its reference to the + * string + * + * Set a string vector reference. If the caller will no longer be + * referencing the string, freeit should be TRUE. Otherwise, this + * will duplicate the string if it is not found in the pool. + * + * Returns: @poolv + **/ +EPoolv * +e_poolv_set (EPoolv *poolv, gint index, gchar *str, gint freeit) +{ + g_return_val_if_fail (poolv != NULL, NULL); + g_return_val_if_fail (index >= 0 && index < poolv->length, NULL); + + if (!str) { + poolv->s[index] = NULL; + return poolv; + } + + G_LOCK (poolv); + + if ((poolv->s[index] = g_hash_table_lookup (poolv_pool, str)) != NULL) { + } else { + poolv->s[index] = camel_mempool_strdup (poolv_mempool, str); + g_hash_table_insert (poolv_pool, poolv->s[index], poolv->s[index]); + } + + G_UNLOCK (poolv); + + if (freeit) + g_free (str); + + return poolv; +} + +/** + * e_poolv_get: + * @poolv: pooled string vector + * @index: index in vector of string + * + * Retrieve a string by index. This could possibly just be a macro. + * + * Since the pool is never freed, this string does not need to be + * duplicated, but should not be modified. + * + * Returns: string at that index. + **/ +const gchar * +e_poolv_get (EPoolv *poolv, gint index) +{ + g_return_val_if_fail (poolv != NULL, NULL); + g_return_val_if_fail (index >= 0 && index < poolv->length, NULL); + + return poolv->s[index] ? poolv->s[index] : ""; +} + +/** + * e_poolv_destroy: + * @poolv: pooled string vector to free + * + * Free a pooled string vector. This doesn't free the strings from + * the vector, however. + **/ +void +e_poolv_destroy (EPoolv *poolv) +{ + g_return_if_fail (poolv != NULL); + + g_free (poolv); +} diff --git a/e-util/e-folder-map.h b/e-util/e-poolv.h index 3f41838882..e3cfb31007 100644 --- a/e-util/e-folder-map.h +++ b/e-util/e-poolv.h @@ -1,4 +1,5 @@ /* + * e-poolv.h * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -13,24 +14,28 @@ * You should have received a copy of the GNU Lesser General Public * License along with the program; if not, see <http://www.gnu.org/licenses/> * - * - * Authors: - * Jeffrey Stedfast <fejj@ximian.com> - * - * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com) - * */ -#ifndef __E_FOLDER_MAP_H__ -#define __E_FOLDER_MAP_H__ +#ifndef E_POOLV_H +#define E_POOLV_H + +/* This was moved out of libedataserver since only MessageList uses it. */ #include <glib.h> G_BEGIN_DECLS -GSList * e_folder_map_local_folders (const gchar *local_dir, - const gchar *type); +typedef struct _EPoolv EPoolv; + +EPoolv * e_poolv_new (guint size); +EPoolv * e_poolv_set (EPoolv *poolv, + gint index, + gchar *str, + gint freeit); +const gchar * e_poolv_get (EPoolv *poolv, + gint index); +void e_poolv_destroy (EPoolv *poolv); G_END_DECLS -#endif /* __E_FOLDER_MAP_H__ */ +#endif /* E_POOLV_H */ diff --git a/e-util/e-signature-utils.c b/e-util/e-signature-utils.c index b28c0cb985..6a8258cb88 100644 --- a/e-util/e-signature-utils.c +++ b/e-util/e-signature-utils.c @@ -20,14 +20,9 @@ #include "e-signature-utils.h" #include <errno.h> +#include <camel/camel.h> #include <glib/gstdio.h> #include <gconf/gconf-client.h> -#include <camel/camel-stream.h> -#include <camel/camel-stream-fs.h> -#include <camel/camel-stream-mem.h> -#include <camel/camel-stream-filter.h> -#include <camel/camel-mime-filter-charset.h> -#include <camel/camel-mime-filter-tohtml.h> #ifndef G_OS_WIN32 #include <sys/wait.h> @@ -176,13 +171,13 @@ e_read_signature_file (ESignature *signature, input_stream = camel_stream_fs_new_with_fd (fd); if (!is_html && convert_to_html) { - CamelStreamFilter *filtered_stream; + CamelStream *filtered_stream; CamelMimeFilter *filter; gint32 flags; filtered_stream = - camel_stream_filter_new_with_stream (input_stream); - camel_object_unref (input_stream); + camel_stream_filter_new (input_stream); + g_object_unref (input_stream); flags = CAMEL_MIME_FILTER_TOHTML_PRESERVE_8BIT | @@ -190,10 +185,11 @@ e_read_signature_file (ESignature *signature, CAMEL_MIME_FILTER_TOHTML_CONVERT_ADDRESSES | CAMEL_MIME_FILTER_TOHTML_CONVERT_SPACES; filter = camel_mime_filter_tohtml_new (flags, 0); - camel_stream_filter_add (filtered_stream, filter); - camel_object_unref (filter); + camel_stream_filter_add ( + CAMEL_STREAM_FILTER (filtered_stream), filter); + g_object_unref (filter); - input_stream = (CamelStream *) filtered_stream; + input_stream = filtered_stream; } buffer = g_byte_array_new (); @@ -201,8 +197,8 @@ e_read_signature_file (ESignature *signature, camel_stream_mem_set_byte_array ( CAMEL_STREAM_MEM (output_stream), buffer); camel_stream_write_to_stream (input_stream, output_stream); - camel_object_unref (output_stream); - camel_object_unref (input_stream); + g_object_unref (output_stream); + g_object_unref (input_stream); /* Make sure the buffer is nul-terminated. */ length = (gsize) buffer->len; @@ -295,9 +291,9 @@ e_run_signature_script (const gchar *filename) input_stream = camel_stream_fs_new_with_fd (in_fds[0]); camel_stream_write_to_stream (input_stream, output_stream); - camel_object_unref (input_stream); + g_object_unref (input_stream); - camel_object_unref (output_stream); + g_object_unref (output_stream); /* Make sure the buffer is nul-terminated. */ length = (gsize) buffer->len; diff --git a/e-util/e-text-event-processor.c b/e-util/e-text-event-processor.c index 870aeed58f..090b7e6b0e 100644 --- a/e-util/e-text-event-processor.c +++ b/e-util/e-text-event-processor.c @@ -73,8 +73,8 @@ e_text_event_processor_class_init (ETextEventProcessorClass *klass) g_object_class_install_property (object_class, PROP_ALLOW_NEWLINES, g_param_spec_boolean ("allow_newlines", - _( "Allow newlines" ), - _( "Allow newlines" ), + "Allow newlines", + "Allow newlines", FALSE, G_PARAM_READWRITE)); diff --git a/e-util/e-unicode.c b/e-util/e-unicode.c index aa1281fc3b..7a8fe696a8 100644 --- a/e-util/e-unicode.c +++ b/e-util/e-unicode.c @@ -34,7 +34,7 @@ #include <gtk/gtk.h> #include <libxml/xmlmemory.h> -#include <camel/camel-iconv.h> +#include <camel/camel.h> #include <glib/gi18n.h> #include "e-unicode.h" diff --git a/e-util/e-util.c b/e-util/e-util.c index 72ccd7a9e2..3728489fa4 100644 --- a/e-util/e-util.c +++ b/e-util/e-util.c @@ -44,12 +44,11 @@ #include <glib/gi18n.h> #include <glib/gstdio.h> -#include <camel/camel-url.h> - #ifdef G_OS_WIN32 #include <windows.h> #endif +#include <camel/camel.h> #include <libedataserver/e-data-server-util.h> #include <libedataserver/e-categories.h> #include <libedataserver/e-source-list.h> @@ -80,6 +79,32 @@ e_get_user_data_dir (void) } /** + * e_get_gnome2_user_dir: + * + * Returns the base directory for user data, according to libgnome. + * The directory can be overridden by setting the GNOME22_USER_DIR + * environment variable. The string is owned by Evolution and must + * not be modified or freed. + * + * Returns: base directory for GNOME user data + **/ +const gchar * +e_get_gnome2_user_dir (void) +{ + static gchar *dirname = NULL; + +#ifndef G_OS_WIN32 + if (G_UNLIKELY (dirname == NULL)) + dirname = g_strdup (g_getenv ("GNOME22_USER_DIR")); +#endif + if (dirname == NULL) + dirname = g_build_filename ( + g_get_home_dir (), ".gnome2", NULL); + + return dirname; +} + +/** * e_get_accels_filename: * * Returns the name of the user data file containing custom keyboard @@ -99,7 +124,7 @@ e_get_accels_filename (void) if (G_UNLIKELY (filename == NULL)) filename = g_build_filename ( - g_get_home_dir (), ".gnome2", + e_get_gnome2_user_dir (), "accels", PACKAGE, NULL); return filename; @@ -1460,32 +1485,3 @@ e_util_set_source_combo_box_list (GtkWidget *source_combo_box, g_object_unref (gconf_client); } -static gpointer -e_camel_object_copy (gpointer camel_object) -{ - if (CAMEL_IS_OBJECT (camel_object)) - camel_object_ref (camel_object); - - return camel_object; -} - -static void -e_camel_object_free (gpointer camel_object) -{ - if (CAMEL_IS_OBJECT (camel_object)) - camel_object_unref (camel_object); -} - -GType -e_camel_object_get_type (void) -{ - static GType type = 0; - - if (G_UNLIKELY (type == 0)) - type = g_boxed_type_register_static ( - "ECamelObject", - (GBoxedCopyFunc) e_camel_object_copy, - (GBoxedFreeFunc) e_camel_object_free); - - return type; -} diff --git a/e-util/e-util.h b/e-util/e-util.h index 887cc20ce2..6f7e56b07f 100644 --- a/e-util/e-util.h +++ b/e-util/e-util.h @@ -27,8 +27,6 @@ #include <gtk/gtk.h> #include <limits.h> #include <gconf/gconf-client.h> -#include <camel/camel-object.h> -#include <cairo.h> #include <e-util/e-marshal.h> @@ -49,6 +47,7 @@ typedef enum { typedef void (*ETypeFunc) (GType type, gpointer user_data); const gchar * e_get_user_data_dir (void); +const gchar * e_get_gnome2_user_dir (void); const gchar * e_get_accels_filename (void); void e_show_uri (GtkWindow *parent, const gchar *uri); @@ -142,11 +141,6 @@ GSList * e_util_get_category_filter_options void e_util_set_source_combo_box_list(GtkWidget *source_combo_box, const gchar *source_gconf_path); -/* Camel uses its own object system, so we have to box - * CamelObjects to safely use them as GObject properties. */ -#define E_TYPE_CAMEL_OBJECT (e_camel_object_get_type ()) -GType e_camel_object_get_type (void); - G_END_DECLS #endif /* E_UTIL_H */ diff --git a/e-util/e-win32-defaults.c b/e-util/e-win32-defaults.c index 8fb2bc3cb9..98187c0340 100644 --- a/e-util/e-win32-defaults.c +++ b/e-util/e-win32-defaults.c @@ -43,6 +43,251 @@ _e_win32_sanitize_path (gchar *path) return path; } +/* + * Addressbook Client registration + */ + +static void +_e_register_vcard_structure (HKEY hKey) +{ + + LONG returnValue; + DWORD dwDisposition; + gchar *defaultIcon = NULL; + gchar *evolutionBinary = NULL; + gchar *vcardCommand = NULL; + BYTE editFlags[4] = { 0x02, 0x00, 0x00, 0x00 }; + + static HKEY tmp_subkey = (HKEY) INVALID_HANDLE_VALUE; + + if ((returnValue = RegCreateKeyExA (hKey, ".vcf", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, &tmp_subkey, &dwDisposition))) + goto cleanup; + + if ((returnValue = RegSetValueExA (tmp_subkey, NULL, 0, REG_SZ, (const BYTE *)"vcard_evo_auto_file", strlen ("vcard_evo_auto_file") + 1))) + goto cleanup; + if ((returnValue = RegSetValueExA (tmp_subkey, "Content Type", 0, REG_SZ, (const BYTE *)"text/x-vcard", strlen ("text/x-vcard") + 1))) + goto cleanup; + + RegFlushKey (tmp_subkey); + + RegCloseKey (tmp_subkey); + + if ((returnValue = RegCreateKeyExA (hKey, "MIME\\Database\\Content Type\\text/x-vcard", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, &tmp_subkey, &dwDisposition))) + goto cleanup; + + if ((returnValue = RegSetValueExA (tmp_subkey, "Extension", 0, REG_SZ, (const BYTE *)".vcf", strlen (".vcf") + 1))) + goto cleanup; + + RegFlushKey (tmp_subkey); + + RegCloseKey (tmp_subkey); + + if ((returnValue = RegCreateKeyExA (hKey, "vcard_evo_auto_file", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, &tmp_subkey, &dwDisposition))) + goto cleanup; + + if ((returnValue = RegSetValueExA (tmp_subkey, NULL, 0, REG_SZ, (const BYTE *)"vCard File", strlen ("vCard File") + 1))) + goto cleanup; + if ((returnValue = RegSetValueExA (tmp_subkey, "EditFlags", 0, REG_BINARY, editFlags, G_N_ELEMENTS (editFlags)))) + goto cleanup; + + RegFlushKey (tmp_subkey); + + RegCloseKey (tmp_subkey); + + if ((returnValue = RegCreateKeyExA (hKey, "vcard_evo_auto_file\\DefaultIcon", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, &tmp_subkey, &dwDisposition))) + goto cleanup; + + evolutionBinary = _e_win32_sanitize_path (g_build_path (G_DIR_SEPARATOR_S, _e_get_bindir (), EVOBINARY, NULL)); + defaultIcon = g_strconcat (evolutionBinary, ",0", NULL); + + if ((returnValue = RegSetValueExA (tmp_subkey, NULL, 0, REG_SZ, (const BYTE *)defaultIcon, strlen (defaultIcon) + 1))) + goto cleanup; + + + RegFlushKey (tmp_subkey); + + RegCloseKey (tmp_subkey); + + if ((returnValue = RegCreateKeyExA (hKey, "vcard_evo_auto_file\\shell\\open\\command", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, &tmp_subkey, &dwDisposition))) + goto cleanup; + + vcardCommand = g_strconcat("\"", evolutionBinary, "\" --component=addressbook \%1", NULL); + + if ((returnValue = RegSetValueExA (tmp_subkey, NULL, 0, REG_SZ, (const BYTE *)vcardCommand, strlen (vcardCommand) + 1))) + goto cleanup; + + RegFlushKey (tmp_subkey); + + RegCloseKey (tmp_subkey); + +cleanup: + g_free (defaultIcon); + g_free (evolutionBinary); + g_free (vcardCommand); +} + +static void +_e_register_ldif_structure (HKEY hKey) +{ + + LONG returnValue; + DWORD dwDisposition; + gchar *defaultIcon = NULL; + gchar *evolutionBinary = NULL; + gchar *vcardCommand = NULL; + BYTE editFlags[4] = { 0x02, 0x00, 0x00, 0x00 }; + + static HKEY tmp_subkey = (HKEY) INVALID_HANDLE_VALUE; + + if ((returnValue = RegCreateKeyExA (hKey, ".ldi", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, &tmp_subkey, &dwDisposition))) + goto cleanup; + + if ((returnValue = RegSetValueExA (tmp_subkey, NULL, 0, REG_SZ, (const BYTE *)"ldif_evo_auto_file", strlen ("ldif_evo_auto_file") + 1))) + goto cleanup; + if ((returnValue = RegSetValueExA (tmp_subkey, "Content Type", 0, REG_SZ, (const BYTE *)"text/x-ldif", strlen ("text/x-ldif") + 1))) + goto cleanup; + + RegFlushKey (tmp_subkey); + + RegCloseKey (tmp_subkey); + + if ((returnValue = RegCreateKeyExA (hKey, ".ldif", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, &tmp_subkey, &dwDisposition))) + goto cleanup; + + if ((returnValue = RegSetValueExA (tmp_subkey, NULL, 0, REG_SZ, (const BYTE *)"ldif_evo_auto_file", strlen ("ldif_evo_auto_file") + 1))) + goto cleanup; + if ((returnValue = RegSetValueExA (tmp_subkey, "Content Type", 0, REG_SZ, (const BYTE *)"text/x-ldif", strlen ("text/x-ldif") + 1))) + goto cleanup; + + RegFlushKey (tmp_subkey); + + RegCloseKey (tmp_subkey); + + if ((returnValue = RegCreateKeyExA (hKey, "MIME\\Database\\Content Type\\text/x-ldif", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, &tmp_subkey, &dwDisposition))) + goto cleanup; + + if ((returnValue = RegSetValueExA (tmp_subkey, "Extension", 0, REG_SZ, (const BYTE *)".ldi", strlen (".ldi") + 1))) + goto cleanup; + + RegFlushKey (tmp_subkey); + + RegCloseKey (tmp_subkey); + + if ((returnValue = RegCreateKeyExA (hKey, "ldif_evo_auto_file", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, &tmp_subkey, &dwDisposition))) + goto cleanup; + + if ((returnValue = RegSetValueExA (tmp_subkey, NULL, 0, REG_SZ, (const BYTE *)"LDIF File", strlen ("LDIF File") + 1))) + goto cleanup; + if ((returnValue = RegSetValueExA (tmp_subkey, "EditFlags", 0, REG_BINARY, editFlags, G_N_ELEMENTS (editFlags)))) + goto cleanup; + + RegFlushKey (tmp_subkey); + + RegCloseKey (tmp_subkey); + + if ((returnValue = RegCreateKeyExA (hKey, "ldif_evo_auto_file\\DefaultIcon", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, &tmp_subkey, &dwDisposition))) + goto cleanup; + + evolutionBinary = _e_win32_sanitize_path (g_build_path (G_DIR_SEPARATOR_S, _e_get_bindir (), EVOBINARY, NULL)); + defaultIcon = g_strconcat (evolutionBinary, ",0", NULL); + + if ((returnValue = RegSetValueExA (tmp_subkey, NULL, 0, REG_SZ, (const BYTE *)defaultIcon, strlen (defaultIcon) + 1))) + goto cleanup; + + + RegFlushKey (tmp_subkey); + + RegCloseKey (tmp_subkey); + + if ((returnValue = RegCreateKeyExA (hKey, "ldif_evo_auto_file\\shell\\open\\command", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, &tmp_subkey, &dwDisposition))) + goto cleanup; + + vcardCommand = g_strconcat("\"", evolutionBinary, "\" --component=addressbook \%1", NULL); + + if ((returnValue = RegSetValueExA (tmp_subkey, NULL, 0, REG_SZ, (const BYTE *)vcardCommand, strlen (vcardCommand) + 1))) + goto cleanup; + + RegFlushKey (tmp_subkey); + + RegCloseKey (tmp_subkey); + +cleanup: + g_free (defaultIcon); + g_free (evolutionBinary); + g_free (vcardCommand); +} + +static void +_e_win32_register_addressbook_impl (gboolean system) +{ + LONG returnValue; + DWORD dwDisposition; + gchar *evolutionBinary = NULL; + gchar *openCommand = NULL; + + static HKEY reg_key = (HKEY) INVALID_HANDLE_VALUE; + static HKEY reg_subkey = (HKEY) INVALID_HANDLE_VALUE; + + + if ((returnValue = RegCreateKeyExA (system ? HKEY_LOCAL_MACHINE : HKEY_CURRENT_USER, + "Software\\Clients\\Contacts\\" CANONICALNAME, 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, ®_key, &dwDisposition))) + goto cleanup; + + if ((returnValue = RegSetValueExA (reg_key, NULL, 0, REG_SZ, (const BYTE *)CANONICALNAME, strlen (CANONICALNAME) + 1))) + goto cleanup; + + RegFlushKey (reg_key); + + if ((returnValue = RegCreateKeyExA (reg_key, "shell\\open\\command", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, ®_subkey, &dwDisposition))) + goto cleanup; + + evolutionBinary = _e_win32_sanitize_path (g_build_path (G_DIR_SEPARATOR_S, _e_get_bindir (), EVOBINARY, NULL)); + openCommand = g_strconcat("\"", evolutionBinary, "\" --component=addressbook", NULL); + if ((returnValue = RegSetValueExA (reg_subkey, NULL, 0, REG_SZ, (const BYTE *)openCommand, strlen (openCommand) + 1))) + goto cleanup; + + RegFlushKey (reg_subkey); + + RegCloseKey (reg_subkey); + + + if ((returnValue = RegCreateKeyExA (reg_key, "Protocols", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, ®_subkey, &dwDisposition))) + goto cleanup; + + _e_register_vcard_structure (reg_subkey); + _e_register_ldif_structure (reg_subkey); + + RegCloseKey (reg_subkey); + + RegCloseKey (reg_key); + + if ((returnValue = RegCreateKeyExA (system ? HKEY_LOCAL_MACHINE : HKEY_CURRENT_USER, + "Software\\Classes", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, ®_key, &dwDisposition))) + return; + + _e_register_ldif_structure (reg_key); + + RegFlushKey (reg_key); + + RegCloseKey (reg_key); + +cleanup: + g_free (evolutionBinary); + g_free (openCommand); +} + +void +_e_win32_register_addressbook (void) +{ + _e_win32_register_addressbook_impl (TRUE); + _e_win32_register_addressbook_impl (FALSE); +} + + +/* + * Mail Client registration + */ + static void _e_register_mailto_structure (HKEY hKey) { @@ -84,7 +329,7 @@ _e_register_mailto_structure (HKEY hKey) evolutionBinary = _e_win32_sanitize_path (g_build_path (G_DIR_SEPARATOR_S, _e_get_bindir (), EVOBINARY, NULL)); mailtoCommand = g_strconcat("\"", evolutionBinary, "\" --component=mail mailto:\%1", NULL); - if ((returnValue = RegSetValueExA (tmp_subkey, NULL, 0, REG_SZ, (const BYTE *)mailtoCommand, strlen(mailtoCommand) + 1))) + if ((returnValue = RegSetValueExA (tmp_subkey, NULL, 0, REG_SZ, (const BYTE *)mailtoCommand, strlen (mailtoCommand) + 1))) goto cleanup; @@ -99,7 +344,7 @@ cleanup: } static void -_e_win32_register_mailer_impl (WINBOOL system) +_e_win32_register_mailer_impl (gboolean system) { LONG returnValue; DWORD i, dwDisposition; @@ -119,7 +364,7 @@ _e_win32_register_mailer_impl (WINBOOL system) "Software\\Clients\\Mail\\" CANONICALNAME, 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, ®_key, &dwDisposition))) goto cleanup; - if ((returnValue = RegSetValueExA (reg_key, NULL, 0, REG_SZ, (const BYTE *)CANONICALNAME, strlen(CANONICALNAME) + 1))) + if ((returnValue = RegSetValueExA (reg_key, NULL, 0, REG_SZ, (const BYTE *)CANONICALNAME, strlen (CANONICALNAME) + 1))) goto cleanup; dllPath = _e_win32_sanitize_path (g_build_path(G_DIR_SEPARATOR_S, _e_get_bindir (), EUTILDLL, NULL)); @@ -213,7 +458,7 @@ _e_win32_register_mailer (void) } static void -_e_win32_set_default_mailer_impl (WINBOOL system) +_e_win32_set_default_mailer_impl (gboolean system) { LONG returnValue; DWORD dwDisposition; diff --git a/e-util/e-win32-defaults.h b/e-util/e-win32-defaults.h index bebc84c47c..e976d7f414 100644 --- a/e-util/e-win32-defaults.h +++ b/e-util/e-win32-defaults.h @@ -31,6 +31,8 @@ void _e_win32_register_mailer (void); void _e_win32_set_default_mailer (void); void _e_win32_unset_default_mailer (void); +void _e_win32_register_addressbook (void); + G_END_DECLS #endif /* __E_WIN32_DEFAULTS__ */ diff --git a/e-util/gconf-bridge.c b/e-util/gconf-bridge.c index d67a238080..e5d5a1998e 100644 --- a/e-util/gconf-bridge.c +++ b/e-util/gconf-bridge.c @@ -53,7 +53,8 @@ typedef struct { that have not received change notification yet. */ - GConfValue *use_first_value; /* Not NULL when the object is a Widget and wasn't realized */ + GConfValue *use_first_value; /* Not NULL when the object is a + Widget and wasn't realized. */ GObject *object; GParamSpec *prop; @@ -549,11 +550,7 @@ gconf_bridge_bind_property_full (GConfBridge *bridge, val = gconf_client_get (bridge->client, key, NULL); if (val) { prop_binding_sync_pref_to_prop (binding, val); - #if GTK_CHECK_VERSION(2,19,7) if (GTK_IS_WIDGET (object) && !gtk_widget_get_realized (GTK_WIDGET (object))) { - #else - if (GTK_IS_WIDGET (object) && !GTK_WIDGET_REALIZED (object)) { - #endif binding->use_first_value = val; } else { gconf_value_free (val); |