2001-07-30 Jason Leach <jleach@ximian.com>
* e-shell-folder-creation-dialog.c (async_create_cb): If we can't
create a folder because it already exists, select that folder that
exists. Bug #1716.
2001-07-30 Frederic Crozat <fcrozat@mandrakesoft.com>
* main.c (main): call gconf_init if gtkhtml is compiled with gconf
support.
* Makefile.am (INCLUDES): add $(GTKHTML_CFLAGS) since we might
need to link with GConf (if gtkhtml is compiled with GConf
support)
2001-07-26 Ettore Perazzoli <ettore@ximian.com>
* evolution-activity-client.c (impl_destroy): Remove the source
for the timeout *before* invoking the CORBA method, as we might
get the timeout callback while invoking the CORBA method, thus
screwing things up.
* evolution-shell-component-client.c (destroy_listener_interface):
New helper function.
(dispatch_callback): Use it.
(impl_destroy): Call it when destroying the listener interface
instead of just freeing the servant.
2001-07-26 Jason Leach <jleach@ximian.com>
* e-shell-view-menu.c (update_offline_menu_item): Little UI thing:
capitalize the words Offline/Online for the File menu.
2001-07-25 Jason Leach <jleach@ximian.com>
* e-shell-folder-selection-dialog.c (folder_selected_cb): New
function. When a folder is selected set the OK button to be
sensitive (but before that have it desensitized). Bug #5483.
2001-07-25 Jason Leach <jleach@ximian.com>
* e-shortcuts-view.c (icon_callback): A warning fix from Jacob.
Bug #5057.
* Makefile.am (INCLUDES): $(BONOBO_CONF_CFLAGS) was here twice,
took out one of them.
* e-shell-view.c (socket_destroy_cb): Mem leak fix. Thanks to the
amazing Jacob B. Bug #5054.
2001-07-25 Jason Leach <jleach@ximian.com>
* e-task-widget.c: #include <libgnome/gnome-defs.h> and
<libgnome/gnome-i18n.h> instead of the full <libgnome/libgnome.h>,
as noted by a comment here.
2001-07-24 Jason Leach <jleach@ximian.com>
* e-storage-set-view.c (e_storage_set_view_construct): Add the
"/My Evolution" path to the path_to_etree_node hash so that
storage_set_view_set_current_folder() can select the My Evolution
node when it's the current one. Fixes #5114 and #3956.
2001-07-23 Ettore Perazzoli <ettore@ximian.com>
* main.c (development_warning): Only show the warning dialog
instead of using `gnome_dialog_run()' so it is not modal. Modal
would be nice, but unfortunately it works bad with Bonobo. Plus
Sawfish doesn't like to keep the modal dialog on top, so it gets
very confusing for users.
2001-07-23 Ettore Perazzoli <ettore@ximian.com>
* e-task-widget.c (e_task_widget_construct): Uhm, set the usize to
`1, -1' instead.
2001-07-23 Ettore Perazzoli <ettore@ximian.com>
* e-task-widget.c (e_task_widget_construct): Set the usize for the
contained hbox to 0x0.
2001-07-23 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view-menu.c: Get the manuals from the `evolution-guide'
dir as that's where they get installed.
2001-07-23 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view.c (storage_set_view_box_button_release_event_cb):
Don't handle button events whose button number is not 1.
2001-07-22 Ettore Perazzoli <ettore@ximian.com>
* e-local-storage.c (remove_folder): Pass the folder type to
`evolution_shell_component_client_async_remove_folder()'.
(async_xfer_folder_step): Likewise with
`evolution_shell_component_client_async_xfer_folder()'.
* evolution-shell-component-client.c
(evolution_shell_component_client_async_remove_folder): New arg
@type. Pass it to the `ShellComponent::removeFolder' CORBA
method.
(evolution_shell_component_client_async_xfer_folder): Likewise
with `::xferFolder'.
* evolution-shell-component.c (impl_removeFolderAsync): Add @type
arg according to the IDL.
(impl_xferFolderAsync): Likewise.
* evolution-shell-component.h: Add arg @type to
`EvolutionShellComponentRemoveFolderFn' and
EvolutionShellComponentXferFolderFn'.
* Evolution-ShellComponent.idl: Add @type arg to
`::removeFolderAsync' and `::xferFolderAsync'.
2001-07-21 Ettore Perazzoli <ettore@ximian.com>
* e-shell-folder-creation-dialog.c (add_folder_types): Only put
the types that are user-creatable in the folder type option menu.
* evolution-shell-component.c
(impl_ShellComponent__get_supported_types): Set the
`user_creatable' member too.
(evolution_shell_component_construct): Copy the `user_creatable'
member too.
* evolution-shell-component.h: New member `user_creatable' in
`EvolutionShellComponentFolderType'.
* e-component-registry.c (register_type): Pass the user_creatable
member of the CORBA FolderType struct.
* e-folder-type-registry.c: New member `user_creatable' in struct
FolderType.
(e_folder_type_registry_register_type): New arg @user_creatable.
(register_folder_type): Likewise.
(folder_type_new): Likewise.
(e_folder_type_registry_type_is_user_creatable): New.
* Evolution-ShellComponent.idl: New member `user_creatable' in
`struct FolderType'.
2001-07-21 Ettore Perazzoli <ettore@ximian.com>
* evolution-activity-client.c (impl_destroy): Use
`g_source_remove()' instead of `gtk_timeout_remove()' here, as we
are using `g_timeout_add()' and not `gtk_timeout_add()' to set up
the timeout callback.
(update_timeout_callback): Reset `have_pending_update' when
returning %TRUE. Set the timeout id to zero when returning
%FALSE.
2001-07-20 Jason Leach <jleach@ximian.com>
[Fix a crash if you start evolution with a bad URI.]
* e-shell.c (e_shell_create_view): If we can't display the URI,
display the default uri. This is because it's necessary for
e_shell_view_display_uri() to run all the way through so corba
interfaces get setup.
* e-shell-view.c (e_shell_view_display_uri): If we fail to create
a new view for a URI (happens if you pass in an invalid URI), be
sure to return FALSE.
2001-07-20 Jason Leach <jleach@ximian.com>
[This is a better way to have "Local Folders" be shown as the
local storage name without breaking current user's shortcuts.]
* e-corba-storage.c (get_display_name): Implement this, but it's
only returning the real name now. Need to change the IDL soon to
let corba storages have separated display names.
* e-shortcuts.c (e_shortcuts_add_default_group): Set these default
shortcut URI's back to evolution:/local/
* e-shell-view.h (DEFAULT_URI): Set this back to
"evolution:/local/Inbox"
* e-storage-set-view.c (etree_value_at): Get the display name for
a storage rather than it's true name.
* e-local-storage.c (impl_get_display_name): Implemented for the
local folder (to return a translated "Local Folders").
* e-storage.c (e_storage_get_display_name): New virtual function
for retrieving the display name.
2001-07-19 Jason Leach <jleach@ximian.com>
* e-local-storage.h: Make the local storage name "Local Folders"
instead of "local", looks better with "My Evolution", "VFolders",
and "Other Contacts".
* e-shell-view.h: Put the #define DEFAULT_URI here instead of in
e-shell-view.c.
* main.c: Remove the duplicated #define STARTUP_URI, actually make
use of the nice defines.
* e-shell-folder-commands.c (e_shell_command_delete_folder): Use
the DEFAULT_URI here instead of a hard coded string.
* e-shortcuts.c (e_shortcuts_add_default_group): Fix the URI's
here to use "Local Folder".
2001-07-19 Jason Leach <jleach@ximian.com>
* e-shell-folder-title-bar.c (e_shell_folder_title_bar_construct):
Line up the padding for the folder title bar labels when you have
the folder bar enabled or disabled (previously when disabled it
was padding ~8 pixels to the right while the other had 0).
* e-shell-view.c (setup_widgets): Take out a 2 pixel padding
around the vbox containing the title bar, folder bar, message list
and mail display. Also remove 2 more extra pixels of padding on
the bottom.
2001-07-16 Ettore Perazzoli <ettore@ximian.com>
* e-shortcuts.c
(override_shortcut_name_and_type_from_storage_set): Removed.
(load_shortcuts): Don't call it.
2001-07-15 Ettore Perazzoli <ettore@ximian.com>
[Fix #4387, Shortcut bar items don't keep the name after rename.]
* e-shortcuts.c (update_shortcuts_by_path): Do not change the name
of the shortcut if the folder's name changes.
2001-07-15 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c (etree_icon_at): Return an icon for depths
greater than 2 as well.
2001-07-15 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view-menu.c (e_shell_view_menu_setup): Connect the
"line_status_changed" signal with
`gtk_signal_connect_while_alive()' for the shell views, so we
don't crash if a view gets destroyed.
* e-shell-view.c (e_shell_view_construct): Likewise.
2001-07-12 Jason Leach <jleach@ximian.com>
* e-shell-view-menu.c (command_submit_bug): Because
bugzilla.ximian does have a mail gateway now, we can have
Help->Submit Bug Report open up bug-buddy.
2001-07-12 Iain Holmes <iain@ximian.com>
* importers/intelligent.c (create_gui): Remove the g_warnings as
they are an annoying red herring
2001-07-12 Dan Winship <danw@ximian.com>
* e-shell.c (init): Initialize priv->db and priv->iid so that
destroy() won't crash if e_shell_construct bails out before
setting them. Reduces bug #4173 to #4169.
2001-07-11 Iain Holmes <iain@ximian.com>
* importers/intelligent.c (intelligent_importer_init): Sync the config
so that the Don't Ask Again gets saved.
2001-07-11 Kjartan Maraas <kmaraas@gnome.org>
* importers/intelligent.c: Mark a string for translation.
2001-07-11 Jason Leach <jleach@ximian.com>
* e-shell-view.c (e_shell_view_save_settings): Make sure to create
~/evolution/config/ if it doesn't exist. (ShellView settings get
saved before component settings, so when the mailer comes around
to saving ETree stuff, this dir will be there). Fixes bug #4279.
2001-07-10 Jason Leach <jleach@ximian.com>
* e-setup.c (copy_default_stuff): Add a temporary block of code to
not use the $GNOME/share/evolution/default_user/shortcuts.xml for
users who might be upgrading, so they'll get the shell-generated
default set of shortcuts. See notes on #4394.
2001-07-09 Larry Ewing <lewing@ximian.com>
* e-shell-folder-commands.c (delete_dialog): convert the folder
name from utf8 before displaying them in the dialog and set the
dialog parent.
2001-07-09 Federico Mena Quintero <federico@ximian.com>
* e-shortcuts-view.c: Make the "Rename" item be a
GNOMEUIINFO_ITEM_NONE() since we don't have a stock icon; likewise
for the "Open in New Window". This gets rid of warnings from
gnome-libs. Use a better stock icon for the "Remove" command, and
add a stock icon to the "Open" command.
2001-07-09 Jason Leach <jleach@ximian.com>
* e-shell-view.c (updated_folder_cb): It's very possible that
get_storage_set_path_from_uri() returns NULL (5 of the 6 return
cases), so check that it's not NULL before trying to strcmp() it.
Fixes a startup crash.
2001-07-06 Dan Winship <danw@ximian.com>
* e-shortcuts.c (shortcut_item_update): Return a gboolean saying
whether or not the shortcut changed. Use strcmp rather than
pointer comparisons to determine this.
(update_shortcut_and_emit_signal): propagate the gboolean from
shortcut_item_update (and only emit the signal if it's TRUE).
(update_shortcuts_by_path): Only call make_dirty if something
changed.
(storage_set_new_folder_callback,
storage_set_updated_folder_callback): Don't call make_dirty:
update_shortcuts_by_path will have called it if necessary.
* e-shell-view.c (updated_folder_cb): Don't call
update_for_current_uri if the folder that was updated isn't the
one being displayed.
2001-07-06 Jason Leach <jleach@ximian.com>
* e-shortcuts-view.c: Little UI tweak for right click menu,
pronouns shouldn't be capitalized ("This" in this case).
[Misc fixes and part of #2228, There should be no dialog boxes
during startup.]
* e-setup.c (e_setup): Check for searches.xml instead of
shortcuts.xml, since shortcuts.xml doesn't really need to exist
(and thus wouldn't be a necessary test whether ~/evolution was
invalid) because shell can generate shortcuts.
(copy_default_stuff): For first time users, only present a dialog
if a problem occurred. We've already clicked "Ok" on a dialog
about copying files.
(check_evolution_directory): Take out the "successfully installed"
dialog on updates too.
2001-07-06 Ettore Perazzoli <ettore@ximian.com>
[This should fix #3873, Bizzarre crash after deleting a few
folders.]
* e-local-storage.c (remove_folder): Don't free the
`physical_path' on error, as it gets freed when freeing the
callback data.
2001-07-06 Ettore Perazzoli <ettore@ximian.com>
[Fix #3959, copying a folder over itself crashes Evolution.]
* e-shell-folder-commands.c
(folder_selection_dialog_folder_selected_callback): Sanity checks:
don't allow copying a folder over itself, or moving it under one
of its descendants. In such cases, pop up an error dialog.
2001-07-05 Iain Holmes <iain@ximian.com>
* e-shortcuts-view.c (icon_callback): Special case the evolution:/My
Evolution uri.
2001-07-05 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view-menu.c: Removed handler for verb
"ChangeFolderProperties".
(command_folder_properties): Removed.
* e-shell-folder-commands.c (e_shell_command_folder_properties):
Removed.
2001-07-03 Ettore Perazzoli <ettore@ximian.com>
* main.c (development_warning): Use both `VERSION' and
`SUB_VERSION' here.
(main): Likewise.
2001-07-04 Gediminas Paulauskas <menesis@delfi.lt>
* evolution-shell-component-utils.c (e_pixmaps_update): set
"pixname" value only if pixbuf was loaded successfully. Otherwise
component crashes if image is not found. Should be checked for
sanity in bonobo_ui_component_set_prop IMHO.
2001-07-03 Aaron Weber <aaron@ximian.com>
* main.c (development_warning): Revised to make it less scary.
2001-07-03 Ettore Perazzoli <ettore@ximian.com>
[Fix a problem with not being able to save a newly created
`shortcuts.xml' file, and another bug that caused the default
group to be added at every start-up, even there were groups
already.]
* e-shortcuts.c (e_shortcuts_new): If loading the shortcuts fails,
set the file_name.
(load_shortcuts): Update `num_groups'.
2001-07-03 Iain Holmes <iain@ximian.com>
* importer/Makefile.am: Add bonobo-conf stuff
2001-07-03 Ettore Perazzoli <ettore@ximian.com>
[The following makes the shell able to create the `shortcuts.xml'
file by itself when the file is not present or corrupted. Fixes
#3668, failure to handle malformed shortcuts.xml file.]
* e-shell.c (e_shell_construct): If the `e_shortcuts_new()'
returns an object with no shortcuts in it, fill it in with
`e_shortcuts_add_default_group()'.
* e-shortcuts.c: New member `num_groups' in EShortcutsPrivate.
(init): Init to zero.
(e_shortcuts_add_group): Increment.
(e_shortcuts_remove_group): Decrement.
(e_shortcuts_get_num_groups): New.
(e_shortcuts_add_default_group): New function to set up the
default shortcuts.
(e_shortcuts_new): Return an empty EShortcuts object if loading
the file files, instead of returning NULL.
2001-07-03 Ettore Perazzoli <ettore@ximian.com>
* e-shell-offline-handler.c
(e_shell_offline_handler_put_components_offline): Ref/unref the
handler so the signal handlers can unref it safely. Also, if
`prepare_for_offline()' fails, don't say that there was an
internal error, as that's confusing. Just say we couldn't put the
components off-line.
[Fix #3758, clicking on the online/offline button crashed
Evolution.]
* Evolution-Offline.idl: Don't derive OfflineProgressListener from
Bonobo::Unknown.
2001-07-03 Ettore Perazzoli <ettore@ximian.com>
[Fixed #3643, Shell crash when component crashed]
* e-shell-view.c (socket_destroy_cb): Fix Jason's broken fix for
#3205 that was causing #3643. It is not safe to strcmp() the
return value from `e_shell_view_get_current_uri()' as it might be
NULL already.
2001-07-02 Christopher James Lahey <clahey@ximian.com>
* Makefile.am (INCLUDES): Added $(BONOBO_CONF_CFLAGS).
(evolution_LDADD): Added $(BONOBO_CONF_LIBS).
2001-07-02 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c (popup_folder_menu): Don't assert that
there is a handler, so we don't crash if user clicks on a folder
whose type we cannot handle for some reason [such as an
uninstalled component].
* evolution-test-component.c (activity_client_cancel_callback):
New callback for the "cancel" signal on the
EvolutionActivityClient object.
(activity_client_show_details_callback): New callback for the
"show_details" signal.
(timeout_callback_1): Connect these two signal handlers.
* e-activity-handler.c (task_widget_button_press_event_callback):
Ahem, right-click is button 3, not button 2.
(show_cancellation_popup): Actually pop up the menu.
(get_corba_null_value): New helper function to create a CORBA_any
null value.
(report_task_event): New helper function to report events to the
listener.
(task_widget_cancel_callback): Use it. Report "Cancel" instead of
"Cancelled".
(task_widget_show_details_callback): New, callback for the "Show
Details" right-click menu item.
* evolution-activity-client.c: Updated to dispatch the "Cancel"
and "ShowDetails" events as "cancel" and "show_details" signals.
(class_init): Install the signals.
(listener_callback): Updated to update the signals corresponding
to the "ShowDetails" and "Cancel" events.
* Evolution-Activity.idl: Changed the docs about the events sent
to the Bonobo::Listener. We now only have "ShowDetails" and
"Cancelled".
* evolution-test-component.c (timeout_callback_1): Make the
activity cancellable so we can test the right-click cancel menu
too.
* main.c (idle_cb): Actually exit if we cannot reach to the shell.
2001-07-01 Ettore Perazzoli <ettore@ximian.com>
* e-uri-schema-registry.c (init): Unset the FLOATING flag on the
object.
2001-07-01 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view.c: Fixing a bug that could cause Evolution to crash
if a new ShellView was created and then destroyed, and then a new
folder would appear in the folder tree. Sigh, this code with the
delayed_selection is pretty messed up, but at least this will add
some consistency to it and make it safe.
(cleanup_delayed_selection): New function to disconnect the
"new_folder_cb" callback if the `delayed_selection' is not NULL,
and also free the `delayed_selection' itself.
(new_folder_cb): Use it.
(destroy): Call it here, otherwise we might [a] leak [b] cause a
crash as soon as a new folder appears in the folder tree, as
"new_folder" gets emitted and our connected signal handler has no
EShellView to handle the signal on.
(e_shell_view_display_uri): Call it here before re-setting the
`delayed_selection'.
* e-shortcuts-view.c (open_shortcut_in_new_window_cb): Add
invocation for `open_shortcut_helper()' back in [it was gone, for
unknown reasons].
2001-07-01 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c (tree_drag_begin): If the node doesn't have
a component, just don't start the whole CORBA drag thing instead
of crashing with an assertion.
2001-07-01 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view-menu.c (command_new_shortcut): New, implementation
for the "New Shortcut" command create a new shortcut.
(goto_folder_dialog_cancelled_cb): Renamed from
`folder_selection_dialog_cancelled_callback'.
(goto_folder_dialog_folder_selected_cb): Renamed from
`folder_selection_dialog_cancelled_callback'.
* e-shell-folder-selection-dialog.c: New member `allow_creation'
in `EShellFolderSelectionDialogPrivate'.
(e_shell_folder_selection_dialog_get_allow_creation): New; return
the value of `allow_creation'.
(e_shell_folder_selection_dialog_set_allow_creation): New; hide or
show the "New" button according to the @allow_creation arg.
2001-07-01 Ettore Perazzoli <ettore@ximian.com>
* e-shortcuts-view.c: Added "Rename Group" command to the
right-click group menu item.
(rename_group_cb): New callback for the "Rename Group" command.
* e-shortcuts-view-model.c (shortcuts_rename_group_cb): New,
callback for the EShortcuts::rename_group signal. It renames the
group by removing it and creating a new one which is the same;
this sucks, but there is no other way with the current shortcut
bar widget.
(e_shortcuts_view_model_construct): Connect it.
* e-shortcuts.c
(class_init): Install signal "rename_group".
(e_shortcuts_rename_group): New.
* e-shortcuts.h: New signal "rename_group".
2001-07-01 Ettore Perazzoli <ettore@ximian.com>
* e-shortcuts.c: Removed `title_to_group' hash from
`EShortcutsPrivate'.
(init): Don't initialize it anymore.
(unload_shortcuts): Don't remove the groups from the hash, and
don't destroy/realloc the hash.
(load_shortcuts): Don't check for duplicate group names. Don't
add the groups to the hash.
(destroy): Don't free the hash.
(e_shortcuts_get_shortcuts_in_group): Changed to get a @group_num
instead of a @group_title.
* e-shortcuts-view-model.c (load_group_into_model): Updated to
pass the group number to `e_shortcuts_get_shortcuts_in_group()'.
Removed arg @group_title.
2001-07-01 Ettore Perazzoli <ettore@ximian.com>
* e-shortcuts-view.c: Added a "Rename" right-click command.
(rename_shortcut_cb): New function, implementation for the "Rename
command".
(rename_shortcut_dialog_cb): Callback for the gnome_request_dialog
function to ask the new name.
* e-shortcuts.c (e_shortcuts_update_shortcut): Call `make_dirty()'
so we get saved too.
2001-07-01 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view.c (activate_shortcut_cb): Receive an @in_new_window
arg as well.
* e-shortcuts-view.c: Added a new "Open in New Window" right-click
menu item. Renamed "Activate" to "Open".
(class_init): Update the installation of the "activate_shortcut"
signal for the additional @in_new_window_arg.
(open_shortcut_helper): New helper function.
(open_shortcut_cb): Renamed from `open_shortcut_cb'. Changed to
use `open_shortcut_helper'
(open_shortcut_in_new_window_cb): New.
(item_selected): Pass %FALSE as the @in_new_window arg for
"activate_shortcut".
* e-shortcuts.c (save_shortcuts): Set the "name" and "type"
properties for the <item> nodes too.
(load_shortcuts): Change `shortcut_group_title' to be an `xmlChar
(shortcut_set): New helper function.
(shortcut_update): New helper function.
(update_shortcut_and_emit_signal): New helper function.
(e_shortcuts_update_shortcut): Use it.
2001-07-01 Ettore Perazzoli <ettore@ximian.com>
This is a first shoot at making shortcuts renameable [#3719];
unfinished. Also, it causes the shortcut bar to stop displaying
message unread count, but this is unfixable until we get rid of
the ::LocalStorage interface, which should hopefully happen soon.
* e-shortcuts-view.c (icon_callback): Get the icon from the type
member of the shortcut item instead of going to the actual folder.
* e-shell-view.c (updated_folder_cb): Don't update the shortcuts
here for now.
* e-shortcuts-view.c (item_selected): Use
`e_shortcuts_get_shortcut()' instead of `e_shortcuts_get_uri()'.
(impl_shortcut_dropped): Pass a NULL @name and @type.
* e-shortcuts-view-model.c (load_group_into_model): Updated to
match the new `e_shortcuts_get_shortcuts_in_group()' function that
doesn't allocate the list anymore and returns a list of
EShortcutItems instead of a list of strings.
(load_group_into_model): Likewise.
(load_all_shortcuts_into_model): Likewise.
(shortcuts_new_shortcut_cb): Get the URI and the name from the
EShortcutItem instead of retrieving them from the storage.
(shortcuts_update_shortcut_cb): Likewise.
(get_storage_set_path_from_uri): Removed [now unused].
* e-shortcuts.c: Define the shortcuts to be EShortcutItems instead
of just strings.
(shortcut_new): New helper function to allocate a Shortcut.
(shortcut_free): New helper function to free a Shortcut.
(shortcut_group_new): New helper function to allocate a
ShortcutGroup.
(shortcut_group_free): New helper function to free a
ShortcutGroup.
(load_shortcuts): Use `shortcut_group_new()' here.
(e_shortcuts_add_group): Same here.
(unload_shortcuts): Use `shortcut_group_free()' here.
(e_shortcuts_remove_group): Here too.
(load_shortcuts): Update to handle `Shortcut's instead of simple
`char *'s representing the URIs.
(save_shortcuts): Likewise.
(e_shortcuts_get_shortcuts_in_group): Likewise. The returned list
now doesn't belong to the caller anymore; the return type is now
const.
(removed_folder_cb): Removed.
(e_shortcuts_construct): Don't connect.
(e_shortcuts_get_group_titles): Dont' re-allocate the string.
(e_shortcuts_get_uri): Removed.
(e_shortcuts_get_shortcut): New.
(e_shortcuts_add_shortcut): new args @name, @type.
(e_shortcuts_update_shortcut_by_uri): Remove.
(e_shortcuts_remove_shortcut_by_uri): Remove.
(get_item): New helper function.
(e_shortcuts_get_shortcut): Use it.
(find_positions_by_uri): Removed.
* e-shortcuts.h: New typedef EShortcutItem.
2001-06-30 Federico Mena Quintero <federico@ximian.com>
* e-storage-set-view.c (popup_folder_menu): Pass the event time to
gtk_menu_popup() so that we can release the button and have the
menu stay up.
2001-06-29 Christopher James Lahey <clahey@ximian.com>
* e-shortcuts-view-model.c (load_all_shortcuts_into_model):
Replaced GList with GSList here to fix a type mismatch.
2001-06-29 Christopher James Lahey <clahey@ximian.com>
* Makefile.am (INCLUDES): Changed $(datadir)/evolution/etspec to
"$(etspecdir)" here.
2001-06-29 Christopher James Lahey <clahey@ximian.com>
* e-shortcuts-view-model.c (load_group_into_model): Replaced GList
with GSList here to fix a type mismatch.
2001-06-29 Ettore Perazzoli <ettore@ximian.com>
* e-shortcuts-view-model.c (load_group_into_model): Updated to
match the fact that `e_shortcuts_in_group()' now returns a GSList
instead of a GList.
(load_all_shortcuts_into_model): Likewise for
`e_shortcuts_get_group_titles()'.
* e-shortcuts.c: Change all `groups' and `views' from GLists to
GSLists in EShortcutsPrivate.
(e_shortcuts_get_group_titles): Return a GSList instead of a
GList.
(e_shortcuts_get_shortcuts_in_group): Likewise.
2001-06-28 Ettore Perazzoli <ettore@ximian.com>
[Fix #3756, `--debug' option not working anymore.]
* main.c (main): Get the URI list from popt with `poptGetArgs'
instead of just using argv. Sigh, I am rusty.
2001-06-28 Ettore Perazzoli <ettore@ximian.com>
[Fix #3382, shortcut bar crashes when checking mail, and all the
different incarnations involving updates to an shortcut bar having
shortcuts to non-existent folders. Also, this fixes #1643,
shortcuts not visible until you enable an IMAP account, and #2436,
misbehavior of shortcut groups when IMAP or invalid shortcuts are
involved.]
* e-shortcuts-view-model.c (load_group_into_model): Add the
shortcuts that point to folders that don't exist yet, too.
2001-06-28 Dan Winship <danw@ximian.com>
* e-storage.c (e_storage_new_folder): Call folder_changed_cb after
adding the new folder so that if it was added highlighted, its
parent will get its child_highlight set.
(e_storage_new_folder): Move the folder_changed_cb() call to avoid
a g_warning.
2001-06-28 Ettore Perazzoli <ettore@ximian.com>
* e-shell.c (e_shell_create_view): Renamed from
`e_shell_new_view'.
2001-06-28 Ettore Perazzoli <ettore@ximian.com>
* main.c (idle_cb): Re-implemented to get a GSList of URIs and
open them on a running shell [if any] or on a newly created shell.
If no args are provided [i.e. the list is NULL], it either
restores from settings [if any], or it just opens the Inbox.
(main): Set up the GSList of arguments and have it passed to the
idle callback.
* e-shell.c (init): Ooops. Init `uri_schema_registry' to NULL as
well.
* evolution-shell-component-client.c
(evolution_shell_component_client_handle_external_uri): New.
(corba_exception_to_result): Handle the `UnsupportedSchema'
exception too.
* evolution-shell-component.h: New
EvolutionShellComponentResult value
`EVOLUTION_SHELL_COMPONENT_UNSUPPORTEDSCHEMA'.
* Evolution-ShellComponent.idl: New exception `UnsupportedSchema'.
(handleExternalURI): This can now raise `NotFound',
`UnsupportedSchema' and `InternalError'.
(createView): This can now raise `UnsupportedSchema' too.
* e-shell.c (impl_Shell_handleURI): Finish implementation.
(class_init): Install it.
* e-uri-schema-registry.c
(e_uri_schema_registry_get_handler_for_schema): Ooops. Rename
from `e_uri_schema_get_handler_for_schema'. Also, return NULL if
no handler is found.
2001-06-27 Ettore Perazzoli <ettore@ximian.com>
* e-component-registry.c (register_component): Get the supported
schemas and register them into the schema registry.
* e-shell.c: New member `uri_schema_registry' in `EShellPrivate'.
(e_shell_construct): Init.
(destroy): Unref.
(impl_Shell_createNewView): Raise exception `UnsupportedSchema' if
it's not an `evolution:' URI. Raise exception `NotFound' if
`e_shell_new_view()' returns NULL.
(impl_Shell_handleURI): New, implementation for the `::handleURI'
method.
(e_shell_get_uri_schema_registry): New.
* Evolution-Shell.idl: New exceptions `UnsupportedSchema' and
`InvalidURI'.
(createNewView): Make this able to raise `NotFound',
`UnsupportedSchema' and `InvalidURI'.
(handleURI): New method.
* e-uri-schema-registry.h: New.
* e-uri-schema-registry.c: New.
2001-06-27 Ettore Perazzoli <ettore@ximian.com>
* evolution-shell-component-client.c: Remove redundant declaration
for `free_ShellComponentListener_servant()'.
2001-06-27 Ettore Perazzoli <ettore@ximian.com>
* evolution-shell-component.c (impl_handleExternalURI):
Implementation for the `::handleExternalURI' CORBA method; just
emit the `HANDLE_EXTERNAL_URI' signal.
(class_init): Install.
2001-06-27 Ettore Perazzoli <ettore@ximian.com>
* evolution-shell-component.c (impl_setOwner): Renamed from
`impl_ShellComponent_set_owner'.
(impl_unsetOwner): Renamed from `impl_ShellComponent_unset_owner'.
(impl_debug): Renamed from `impl_ShellComponent_debug'.
(impl_createView): Renamed from `impl_ShellComponent_create_view'.
(impl_createFolderAsync): Renamed from
`impl_ShellComponent_async_create_folder'.
(impl_removeFolderAsync): Renamed from
`impl_ShellComponent_async_remove_folder'.
(impl_xferFolderAsync): Renamed from
`impl_ShellComponent_async_xfer_folder'.
(impl_populateFolderContextMenu): Renamed from
`impl_ShellComponent_populate_folder_context_menu'.
(class_init): Updated accordingly.
2001-06-27 Ettore Perazzoli <ettore@ximian.com>
* evolution-test-component.c (factory_fn): Pass NULL as the
@external_uri_schemas arg to `evolution_shell_component_new'.
* evolution-shell-component.c: New enum value
`HANDLE_EXTERNAL_URI'. New member `external_uri_schemas' in
`EvolutionShellComponentPrivate'.
(init): Initialize `external_uri_schemas' to NULL.
(destroy): Free it.
(destroy):
(class_init): Add the "handler_external_uri" signal.
(evolution_shell_component_new): Added precondition on
@folder_types. New arg @external_uri_schemas.
(evolution_shell_component_construct): Added preconditions. New
arg @external_uri_schemas. Initialize the `external_uri_schemas'
member in the EvolutionShellComponentPrivate part.
(impl_ShellComponent__get_external_uri_schemas): New,
implementation for reading the `external_uri_schemas' attribute.
(class_init): Install it in the EPV.
* evolution-shell-component.h: New signal `handle_external_uri'.
* Evolution-ShellComponent.idl: New attribute `extra_uri_schemas'.
(handleExternalURI): New method.
2001-06-26 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c (etree_value_at): Don't strdup "My
Evolution"! It was getting leaked every time the e-table wanted
to read the value this way.
2001-06-26 Ettore Perazzoli <ettore@ximian.com>
* e-local-storage.c: Removed member `BonoboListener' from
`AsyncCreateFolderCallbackData' and
`AsyncRemoveFolderCallbackData'.
(bonobo_interface_remove_folder_cb) : Return the value from
`create_folder()'.
(bonobo_interface_remove_folder_cb): Return the value from
`remove_folder()'.
(notify_bonobo_listener): Removed.
(component_async_create_folder_callback): Don't notify the
listener here.
(component_async_remove_folder_callback): Ditto.
(create_folder): Removed @listener arg. Not here either. Return
a valid E_STORAGE error code instead. Also, don't set the
`listener' field in `callback_data'.
(remove_folder): Likewise.
(bonobo_interface_create_folder_cb): Remove @listener arg.
(bonobo_interface_remove_folder_cb): Likewise.
2001-06-25 jacob berkman <jacob@ximian.com>
* e-shell-view.c: (set_folder_timeout): display a selected uri in
a timeout rather than right away, so the UI feels a bit more
responsive, and the tree is more navigable via keyboard
(switch_on_folder_tree_click): use the timeout rather than setting
the URI right away
(destroy): remove the timeout if it still exists
(update_for_current_uri): if there is a timeout set, don't update
(e_shell_view_display_uri): remove the timeout if it exists
2001-06-25 Ettore Perazzoli <ettore@ximian.com>
* main.c (no_views_left_cb): Call `e_shell_unregister_all()'.
* e-shell.c (e_shell_unregister_all): New.
2001-06-25 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c (convert_gdk_drag_action_to_corba): Remove
trailing "\n" from g_warning.
(convert_corba_drag_action_to_gdk): Likewise.
(tree_drag_data_received): Likewise.
(new_folder_cb): Likewise.
* e-shortcuts-view-model.c (load_group_into_model): Remove
trailing "\n" from g_warning.
2001-06-25 Ettore Perazzoli <ettore@ximian.com>
* main.c (no_views_left_cb): Unref the shell here.
* e-storage-set.c (destroy): Use
`name_to_named_storage_foreach_destroy()' as the function argument
to `g_hash_table_foreach()', not `named_storage_destroy()', which
is just plainly wrong.
* e-shell.c (setup_corba_storages): Don't ref the
corba_storage_registry here.
(destroy): Don't unref here.
(setup_activity_interface): Don't ref the activity_handler either.
(destroy): Don't unref it here.
* e-component-registry.c (e_component_registry_construct): Don't
ref the shell here.
(destroy): Don't unref it here.
2001-06-25 Ettore Perazzoli <ettore@ximian.com>
* main.c (no_views_left_cb): Don't call `e_shell_quit()' anymore.
* e-shell-view-menu.c (command_quit): Call
`e_shell_destroy_all_views()' instead of `e_shell_quit()', which
does not exist anymore.
* e-shell.c (e_shell_quit): Removed.
(e_shell_destroy_all_views): New.
2001-06-24 Ettore Perazzoli <ettore@ximian.com>
* Makefile.am: s/\.oafinfo/.oaf/g.
* GNOME_Evolution_TestComponent.oafinfo: Renamed to
`GNOME_Evolution_TestComponent.oaf'.
2001-06-24 Ettore Perazzoli <ettore@ximian.com>
* e-shell.c: New member `iid' in EShellPrivate.
(init): Init to NULL.
(e_shell_construct): Set it to the value of the @iid argument.
(destroy): Unregister that IID.
(register_shell): Removed.
(e_shell_construct): Just do all the work here. The function was
too simple to really be useful as separate.
* e-shell.c, e-shell.h: Changed to derive from BonoboXObject
instead of deriving from BonoboObject and doing all the nasty
CORBA work by hand.
2001-06-24 Ettore Perazzoli <ettore@ximian.com>
* evolution-test-component.c (activity_client_clicked_callback):
New callback for the "clicked" signal on the EActivityClient.
Just spit out a warning now, for testing purposes.
(timeout_callback_1): Connect it.
* evolution-activity-client.c (listener_callback): Emit the
"clicked" signal if we get the "Clicked" event from the Bonobo
listener.
2001-06-24 Ettore Perazzoli <ettore@ximian.com>
* e-shell-folder-commands.c: #include <gtk/gtklabel.h>.
(delete_dialog): Constify @folder_name properly.
(delete_cb): Change the first arg to be an EStorageSet as expected
for EStorageSetResultCallbacks.
(rename_dialog): #if 0.
2001-06-24 Ettore Perazzoli <ettore@ximian.com>
* e-task-widget.h, e-task-widget.c: Changed to derive from
GtkEventBox.
* e-activity-handler.c (task_widget_button_press_event_callback):
New callback for the "button_press_event" signal on the
ETaskWidgets. Dispatch the "Clicked" event through the Bonobo
listener.
(task_widget_new_from_activity_info): Connect here.
2001-06-24 Ettore Perazzoli <ettore@ximian.com>
* evolution-test-component.c: Changed to use the
`EvolutionActivityClient' object. New global static variable
`activity_client'.
(create_animated_icon): Removed.
(create_icon_from_pixbuf): Removed.
(task_bar_event_listener_callback): Removed.
(timeout_callback_1): Create an EvolutionActivityClient object and
put a pointer to it into `activity_client'. Lower the timeout
delay from 1000 msecs to 100 msecs, so we can stress-test the
speed control code in EvolutionActivityClient.
(timeout_callback_2): Use the EvolutionActivityClient. Increment
progress by 1, instead of 10.
(timeout_callback_3): Destroy the EvolutionActivityClient.
* Makefile.am (libeshell_la_SOURCES): Add
`evolution-activity-client.c'.
(eshellinclude_HEADERS): Add `evolution-activity-client.h'.
* evolution-activity-client.c: New.
* evolution-activity-client.h: New.
* e-activity-handler.c: Updated all instances of `ActivityID' with
`ActivityId'.
* Evolution-Activity.idl: Renamed `ActivityID' to `ActivityID'.
Added value `DIALOG_ACTION_ERROR' to `DialogAction'.
2001-06-24 Ettore Perazzoli <ettore@ximian.com>
* evolution-test-component.c: Remove the `activity_interface'
global.
(timeout_callback_3): Get the ::Activity interface using
`evolution_shell_client_get_activity_interface()' on
`parent_shell' instead.
(timeout_callback_2): Likewise.
(timeout_callback_2): Likewise.
(timeout_callback_1): Likewise.
(owner_set_callback): Don't query interface here. Check if the
shell has an ::Activity interface by using
`evolution_shell_client_get_activity_interface()' here as well.
* evolution-shell-client.c: New member `activity_interface' in
`EvolutionShellClientPrivate'.
(destroy): unref/release it.
(evolution_shell_client_construct): Initialize it by querying the
shell CORBA Object for the ::Activity interface.
(evolution_shell_client_get_activity_interface): New.
2001-06-23 Jason Leach <jleach@ximian.com>
* e-shell-folder-selection-dialog.c
(e_shell_folder_selection_dialog_construct): Make the folder tree
have a similar expanded state as the shell's folder tree.
* e-local-storage.c (remove_folder): New function that does the
meat of actual deletion stuff.
(remove_folder_directory): A helper function that remove_folder()
uses.
(component_async_remove_folder_callback): A new callback to do the
removing stuff from shell (if there weren't errors from the
component).
(impl_async_remove_folder): Implemented this.
* evolution-shell-component-client.c
(evolution_shell_component_client_async_remove_folder):
Implemented this.
* e-shell-view.c (e_shell_view_remove_control_for_uri): New
function.
2001-06-23 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view.c (e_shell_view_set_current_shortcuts_group_num):
Moved at the bottom, as it's public API. Also add preconditions.
(e_shell_view_get_current_shortcuts_group_num): Likewise.
2001-06-23 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view.c: Get rid of some `#if 0'ed code.
2001-06-23 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view.c (corba_interface_set_message_cb): Replaced with
an empty stub, as the "set_message" method is going to be
deprecated.
(corba_interface_unset_message_cb): Likewise for the
"unset_message" method.
2001-06-23 Ettore Perazzoli <ettore@ximian.com>
* e-shell.c (e_shell_construct): Set `splash' to NULL when
@show_splash is false, so the compiler doesn't complain.
* e-shell-view-menu.c: #include <gtk/gtkmain.h>.
* e-setup.c: #include <unistd.h>.
* importer/intelligent.c: #include <gtk/gtkhbox.h> and
<gtk/gtkdrawingarea.h>.
2001-06-23 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view.c: New member `menu_hint_label' in
`EShellViewPrivate'.
(init): Init to NULL.
(ui_engine_add_hint_callback): Set the label in the menu hint
label, show the menu hint label, hide the task bar.
(ui_engine_remove_hint_callback): New callback for the
"remove_hint" signal on the BonoboUIEngine; hide the hint label,
show the task bar.
(setup_statusbar_hints): Connect it.
(setup_menu_hint_label): New helper function to create the menu
hint label.
(create_status_bar): Call it.
2001-06-23 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view-menu.c (command_quit): Add a `gtk_main_quit()' at
the end here.
2001-06-23 Ettore Perazzoli <ettore@ximian.com>
* Makefile.am: Add rules to build the test component and an
`install-test-component' target to install it.
* GNOME_Evolution_TestComponent.oafinfo: New OAF file for the test
component.
* evolution-test-component.c: New component, currently to test the
activity interfaces. We will be able use it for testing more
things in the future.
* e-shell.c: New member `activity_handler' in `EShellViewPrivate'.
(init): Init here.
(class_init): Unref.
(setup_activity_interface): New helper function to create an
`EActivityHandler' object and aggregate it to the `EShell'.
(e_shell_construct): Call here.
(e_shell_new_view): Attach the task bar of the newly created view
to the activity handler by using
`e_activity_handler_attach_task_bar()'.
* e-shell-view.c: Removed old progress bar code. New members
`status_bar' and `task_bar' in EShellViewPrivagte; removed member
`progress_bar'.
(init): Initialize the new fields; remove initialization for
`progress_bar'.
(impl_destroy): Handle the new fields here too.
(setup_task_bar): New helper function to set up an ETaskBar.
(create_status_bar): New helper function to create the status bar
with an ETaskBar in it.
(ui_engine_add_hint_callback): New callback for the "add_int"
BonoboUIEngine signal.
(setup_statusbar_hints): New helper function to set up the menu
hints for the status bar; connect `ui_engine_add_hint_callback()'
here.
(setup_widgets): Call `create_status_bar()' and
`setup_statusbar_hints()'; pack the status bar in a vbox instead
of using the Bonobo status bar stuff, which is kinda broken.
(e_shell_view_get_task_bar): New.
(get_type_for_folder): No use to get the EFolderTypeRegistry here.
* Evolution.idl: #include <Evolution-Activity.idl> and
<Evolution-Icon.idl>.
* Evolution-Activity.idl: New.
* Evolution-Icon.idl: New.
* e-activity-handler.c: New.
* e-activity-handler.h: New.
* e-task-bar.c: New.
* e-task-bar.h: New.
* e-task-widget.c: New.
* e-task-widget.h: New.
2001-06-21 Jason Leach <jleach@ximian.com>
* evolution-storage.c (evolution_storage_deregister_on_shell): New
function, uses the StorageRegistry::removeStoragebyName corba call
to properly make the storage vanish from the shell.
2001-06-18 Dan Winship <danw@ximian.com>
* Makefile.am (evolution_LDADD): Remove DB3_LDADD
* e-shell-view-menu.c: Fix the help URLs
2001-06-13 Not Zed <NotZed@Ximian.com>
* e-shell-view.c (switch_on_folder_tree_click): Check priv->uri
isn't null before strcmp'ing it here too.
2001-06-11 Dan Winship <danw@ximian.com>
* e-shell-view.c (destroy): Don't destroy the
offline_toggle_pixmap: the offline_toggle 0wnz it.
(update_for_current_uri): Check priv->uri isn't NULL before
strcmp()ing it.
2001-06-11 Jason Leach <jleach@ximian.com>
* evolution-storage.c (impl_Storage_async_create_folder): Fixed
folder creation on IMAP storages (by notifying bonobo listener
with the result).
* evolution-storage-listener.c: Some cleaning.
2001-06-08 Iain Holmes <iain@ximian.com>
* e-setup.c (check_dir_recur): Don't copy the old Executive-Summary dir.
(e_setup): If there is an Executive-Summary dir in ~/evolution/local
ask it the user wants to remove it.
(e_shell_rm_dir): Function to completely delete a directory.
2001-06-07 Iain Holmes <iain@ximian.com>
* evolution-storage.c (impl_Storage_async_create_folder): Removed
debug spew.
* e-shell-importer.c (start_import): Removed spew.
* e-shell-view.c (update_window_icon): Take a gboolean to say if
the folder is my evolution. Do special cased things for My Evolution.
(update_folder_title_bar): Same.
(update_for_current_uri): Find out if the uri is the my evolution one
and act accordingly.
(get_control_for_uri): Handle the toplevel My Evolution.
* e-storage-set-view.c (etree_icon_at): Get an icon for the toplevel
My Evolution.
(etree_value_at): Default is to return "My Evolution"
(e_storage_set_view_construct): Set the toplevel to be called "My
Evolution" and show it.
(e_storage_set_view_set_show_folders): Same.
2001-06-08 Ettore Perazzoli <ettore@ximian.com>
* e-shell-folder-commands.c (e_shell_command_add_to_shortcut_bar):
Allow a NULL @shell_view arg.
2001-06-08 Jason Leach <jleach@ximian.com>
* e-shell.c (e_shell_construct): Fix splash setup to keep it from
giving two Gtk-CRITICAL assertions when you do --no-splash.
2001-06-06 Jon Trowbridge <trow@ximian.com>
* evolution-storage.c (impl_Storage_async_create_folder): Changed
purely informational debug spew from a g_warning to a g_message.
* e-shell-importer.c (show_import_wizard): The import wizard
defined in import.glade only has three pages... yet we were trying
to manipulate "page4" as the finish page, with the expected bad
results. My guess is that the .glade file got changed, but the
code didn't get updated.
(start_import): We were trying to bonobo_object_unref
(BONOBO_OBJECT (icd->client)), which is fine except for the
fact that icd->client is just a GtkObject, not a BonoboObject.
Changed to a gtk_object_unref.
(start_import): Changed a purely informational bit of debug
spew from a g_warning to a g_message.
2001-06-06 Iain Holmes <iain@ximian.com>
* importers/intelligent.c (create_gui): Make a few boxes, and make
the whole dialog horizontal. Add better buttons, and a "Don't ask
again button" (And the world rejoices).
Fixed the notebook so it displayed the blank page on startup.
(intelligent_importer_init): Handle the "Don't ask me again" button.
2001-06-06 Jason Leach <jleach@ximian.com>
(Fix bug #3205: Component crash causes folder switch even when not
needed)
* e-shell-view.c (socket_destroy_cb): Only flip around the
ShellView to different folders when we're currently viewing the
URI that's being closed/crashed.
2001-06-06 Jason Leach <jleach@ximian.com>
(Fix bug #418: Save state of folder tree view)
* e-shell-view.c (e_shell_view_save_settings): Changed the char *
@prefix argument to an int @view_num.
(e_shell_view_load_settings): Ditto.
(get_local_prefix_for_view): New function that gets us a prefix
from a view_num.
* e-shell-view.c (e_shell_view_save_settings): Save the
expanded/collapsed information for each storage-set-view here.
(e_shell_view_load_settings): Load it here.
* e-storage-set-view.c (e_storage_set_view_construct): Make it so
new storage set views have their storages expanded by default, but
will respsect the expanded state information that we load into it.
(insert_storages): Minor change here too.
(new_folder_cb): Ditto.
2001-06-05 Jason Leach <jleach@ximian.com>
* e-shell-view-menu.c: Plug in all the folder tree right click
menu verbs so bonobo-warnings aren't emitted (even though the
respective implementation functions are currently unimplemented).
(command_delete_folder): New function, see above.
(command_rename_folder): Ditto.
(command_folder_properties): Ditto.
* e-shell-folder-commands.c (e_shell_command_delete_folder): New
function, currently unimplemented.
2001-06-04 Jason Leach <jleach@ximian.com>
(Fixing bug #1299: Shell saves shortcuts when display name
changes)
* e-shortcuts.c (class_init): New signal: "update_shortcut".
* e-shortcuts-view-model.c (e_shortcuts_view_model_construct):
Connect thew new signal here.
* e-shortcuts-view-model.c (shortcuts_update_shortcut_cb): New
function, uses the new e_shortcut_model_update_item().
* e-shell-view.c (corba_interface_set_folder_bar_label): Fix a
warning here.
2001-06-03 Ettore Perazzoli <ettore@ximian.com>
* Makefile.am (evolution_LDADD): Move `$(DB3_LDADD)' before
libeutil.
2001-06-01 Ettore Perazzoli <ettore@ximian.com>
* Makefile.am (evolution_LDADD): Add `$(DB3_LDADD)'.
2001-05-30 Jason Leach <jleach@ximian.com>
* e-shell-view.c (e_shell_view_set_current_shortcuts_group_num):
New function (probably should just be static).
(e_shell_view_load_settings): Load the current shortcut group here
using the above new function.
(e_shell_view_save_settings): Save current shortcut group in here.
2001-05-30 Jason Leach <jleach@ximian.com>
* e-shell-folder-title-bar.c: New 'folder_bar_label' member for
EShellFolderTitleBar, it's for information that's shown to the
left of the icon like the dates in the calendar (or, potentially
total and unread numbers for mailer).
(e_shell_folder_title_bar_set_folder_bar_label): New function,
lets others set the title bar extra label.
* Evolution-ShellView.idl: New method 'setFolderBarLabel' for our
exposed ShellView interface.
* evolution-shell-view.h: New signal "set_folder_bar_label" for
EvolutionShellView.
* evolution-shell-view.c (impl_ShellView_set_message): Emit the
new signal here.
* e-shell-view.c (setup_corba_interface): Connect the signal here.
* e-shell-view.c (corba_interface_set_folder_bar_label): New
function, callback for the above signals, does the actual extra
label setting for the folder title bar.
* e-shell-folder-commands.c (e_shell_command_add_to_shortcut_bar):
Fix a warning here.
2001-05-30 Jason Leach <jleach@ximian.com>
* e-shell.c (e_shell_construct): Removed an unecessary sleep(2)
call, so evolution will start up 2 seconds faster now.
2001-05-30 Jason Leach <jleach@ximian.com>
* e-shell-view-menu.c: Connect the AddFolderToShortcutBar verb to
their implementation functions.
* e-shell-view.c (e_shell_view_get_current_shortcuts_group_num):
New function, use it to find out which shourtcut group is
currently open on the shortcut bar.
* e-shell-folder-commands.c (e_shell_command_add_to_shortcut_bar):
Implement this using new function described above.
2001-05-29 Federico Mena Quintero <federico@ximian.com>
* e-shell-view.c (setup_progress_bar): Added missing castt.
(setup_offline_toggle): Likewise.
2001-05-29 JP Rosevear <jpr@ximian.com>
* e-shell-view.c (setup_progress_bar): unref the control when
finished with it
(setup_offline_toggle): ditto
(destroy): destroy offline and progress widgets
2001-05-28 Dan Winship <danw@ximian.com>
* e-storage-set-view.c (new_storage_cb): Call
e_tree_node_set_expanded on the storage_set_view, not the
storage_set (which is not an ETree).
2001-05-27 Dan Winship <danw@ximian.com>
* evolution-shell-component-utils.c: New file.
(e_pixmaps_update): Moved here from e-util to break e-util bonobo
dependency.
* e-shell-view-menu.c: #include
"evolution-shell-component-utils.h" instead of "e-gui-utils.h"
* Makefile.am (libeshell_la_SOURCES, eshellinclude_HEADERS): Add
evolution-shell-component-utils.[ch]
2001-05-26 Dan Winship <danw@ximian.com>
* e-storage-set-view.c (destroy): Don't free the hash keys in
priv->path_to_etree_node, because they're owned by the ETree now.
(e_storage_set_view_set_show_folders): Likewise.
2001-05-25 Peter Williams <peterw@ximian.com>
* Makefile.am: Change libeshell from a noinst_LIBRARIES to
a lib_LTLIBRARIES. Install its headers in
$includedir/evolution/shell.
* evolution-storage.c (safe_corba_string): New, copy of e_safe_corba_string
in libeutil. This way libeshell doesn't have a missing symbol when programs
that don't have libeutil link to it.
(evolution_storage_register): s,e_safe_corba_string,safe_corba_string,g.
2001-05-25 jacob berkman <jacob@ximian.com>
* e-shell-view.c (setup_widgets): place the shortcut bar in a
frame
2001-05-21 Christopher James Lahey <clahey@ximian.com>
* Makefile.am (INCLUDES): Added ETSPECDIR. Added
e-storage-set-view.etspec to get installed.
* e-local-storage.c (remove_folder_directory): Commented out this
function since it is unused.
* e-shell-folder-commands.c
(folder_selection_dialog_folder_selected_callback), e-shell-view.c
(update_offline_toggle_status): Fixed warnings here by adding a
return; after the g_assert_not_reached();.
* e-shell-importer.c (start_import): Got rid of real_folderpath
here and just reused folderpath (It was causing uninitialized
variable warnings.)
* e-shell.c (impl_Shell_getLocalStorage): Use
bonobo_object_dup_ref here. It makes things simpler.
* e-storage-set-view.c: Removed ETREE_SPEC since it's no longer
needed.
(convert_corba_drag_action_set_to_gdk,
folder_context_menu_activate_cb, remove_cb,
folder_context_menu_remove_cb): Commented out these functions
since they're unused.
(new_storage_cb, new_folder_cb, insert_folders, insert_storages):
Don't bother using insert_id here since it no longer does
anything.
(new_storage_cb, removed_storage_cb, removed_folder_cb): Don't
free the data returned from e_tree_memory_node_remove.
(e_storage_set_view_construct): Set the destroy func here so that
memory will automatically get freed when nodes are destroyed.
g_strdup the root node string here. Use
e_tree_construct_from_spec_file here to use an external file.
(e_storage_set_view_set_show_folders): g_strdup the root node
string here.
* e-storage-set-view.etspec: New etspec file.
* evolution-shell-component-client.c
(free_ShellComponentListener_servant): Added a prototype here.
2001-05-23 Chris Toshok <toshok@ximian.com>
* evolution-shell-component.h
(EVOLUTION_SHELL_COMPONENT_POPUP_PLACEHOLDER): track change to the
path to the ComponentPlaceholder.
2001-05-20 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view.c: New static members `offline_pixmap',
`offline_mask', `online_pixmap', `online_mask'. Add members
`tooltips', `offline_toggle' and `offline_toggle_pixmap' to
`EShellViewPrivate'.
(init): Init to NULL. Also init the `progress_bar' member to NULL
as well, as we were not initializing it.
(destroy): Unref the tooltips.
(load_images): New static function to load the offline and online
icons into the pixmaps/masks.
(class_init): Call it.
(update_offline_toggle_status): New.
(shell_line_status_changed_cb): Call it.
(offline_toggle_clicked_cb): New, callback for the "clicked"
signal on the offline/online button.
(setup_offline_button): New function to set up the
`offline_button'.
(setup_widgets): Call it.
(setup_progress_bar): Changed to get an `EShellView' pointer,
instead of an `EShellViewPriv' pointer.
(setup_widgets): Updated accordingly.
2001-05-20 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view-menu.c: Define the verb for "CopyFolder" as well.
(command_copy_folder): Implementation for the "CopyFolder" verb.
* e-shell-folder-commands.c: New struct `FolderCommandData'.
(folder_command_data_new): New function to allocate and initialize
it.
(folder_command_data_free): New function to free it.
(e_shell_command_move_folder): Pass a pointer to a filled-in
`FolderCommandData' struct to the callbacks instead of just
passing a pointer to the shell object.
(move_folder_selected_callback): Removed.
(move_folder_cancelled_callback): Removed.
(folder_selection_dialog_folder_selected_callback): New generic
callback for the folder selection dialog.
(folder_selection_dialog_cancelled_callback): New generic callback
for the folder selection dialog.
(connect_folder_selection_dialog_signals): New function to connect
these two handlers to a folder selection dialog.
(xfer_result_callback): New callback for the async xfer function.
(get_folder_name): New utility function.
(e_shell_command_copy_folder): Implement.
2001-05-19 Ettore Perazzoli <ettore@ximian.com>
* e-shell-folder-commands.c
(e_shell_command_create_new_folder): Changed to use
`e_shell_view_get_current_path()' to get the default path, instead
of computing it itself.
(move_folder_cancelled_callback) (move_folder_selected_callback):
New, callbacks for the "cancelled" and "folder_selected" signals
on the folder selection dialog for the "Move folder" operation.
(e_shell_command_move_folder): Implemented.
* e-shell-view-menu.c (command_move_folder): New, implementation
for the "MoveFolder" verb.
* e-shell-view.c (e_shell_view_get_current_path): New.
2001-05-19 Ettore Perazzoli <ettore@ximian.com>
* e-shell-folder-selection-dialog.h: Rename @default_path to
@default_uri.
* e-shell.c (impl_Shell_selectUserFolder): Pass a NULL @caption to
`e_shell_folder_selection_dialog_new()'.
* e-shell-importer.c (import_druid_finish): Add a caption to the
folder selection dialog. Constify local variable `foldername',
and avoid g_strdupping/g_freeing it, as it's useless.
* e-shell-view-menu.c (command_goto_folder): Add a caption to
the folder selection dialog.
* e-shell-folder-selection-dialog.c
(e_shell_folder_selection_dialog_new): New arg @caption.
(e_shell_folder_selection_dialog_construct): Likewise. Also
cleaned up a bit.
2001-05-19 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view-menu.c: Removed "NewView" verb. Added
`folder_verbs', with "OpenFolderInNewWindow" in it.
(e_shell_view_menu_setup): Set up the `folder_verbs' too.
(command_new_view): Renamed to
`command_open_folder_in_new_window'.
* e-shell-folder-commands.c
(e_shell_command_open_folder_in_other_window): Implement.
2001-05-19 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view-menu.c (command_create_folder): Call
`e_shell_command_create_new_folder()' implemented in
`e-shell-folder-commands.c'.
* e-shell-folder-commands.c: New.
* e-shell-folder-commands.h: New.
2001-05-17 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c
(populate_folder_context_menu_with_common_items): Removed.
(popup_folder_menu): Instead of creating the component and the
folder popup definition here, just do `bonobo_window_add_popup()'
and assume that "/popups/FolderPopup" is defined in the toplevel
window's UI xml file.
2001-05-16 Ettore Perazzoli <ettore@ximian.com>
* evolution-shell-component-client.c: Moved some functions around
to avoid the warning about the static
`free_ShellComponentListener_servant()' function being used prior
to declaration.
2001-05-15 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view-menu.c (command_run_bugbuddy): `#if 0'ed out.
(command_submit_bug): New. Just fire up the web browser with
`http://bugzilla.ximian.com' in it.
(menu_do_misc): Associate the latter instead of the former to the
"HelpSubmitBug" verb.
2001-05-15 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view-menu.c: Add an `HelpFAQ' verb.
2001-05-14 jacob berkman <jacob@ximian.com>
* e-folder-tree.c (remove_folder): set the subfolder's parent to
NULL so the subfolder list doesn't change whilst we are using it
(folder_remove_subfolder): this function didn't used to work at
all
2001-05-12 Chris Toshok <toshok@ximian.com>
* e-storage-set-view.c (tree_drag_data_received): implement the
CORBA side of dragging.
(convert_gdk_drag_action_set_to_corba): rename
convert_gdk_drag_action_to_corba to this.
(convert_corba_drag_action_set_to_gdk): rename
convert_corba_drag_action_to_gdk to this.
(convert_gdk_drag_action_to_corba): new function that doesn't
build a bitmask, useful for the Action types, instead of
ActionSet.
(convert_corba_drag_action_to_gdk): same.
2001-05-11 Chris Toshok <toshok@ximian.com>
* e-storage-set-view.c
(populate_folder_context_menu_with_common_items): add RemoveFolder
menu item and verb.
(folder_context_menu_remove_cb): new function, call
e_storage_set_async_remove_folder.
(remove_cb): callack for e_storage_set_async_remove_folder.
* evolution-shell-component-client.c
(evolution_shell_component_client_populate_folder_context_menu):
fix prototype to reflect Component -> Container.
* evolution-shell-component-client.h: same.
2001-05-11 Chris Toshok <toshok@ximian.com>
* evolution-shell-component.h
(EVOLUTION_SHELL_COMPONENT_POPUP_PLACEHOLDER): add this define for
the xml path to use when adding menu items to the folder popup.
* e-storage-set-view.c
(populate_folder_context_menu_with_common_items): add (#ifdef
DEBUG_XML) a menu item to dump the bonobo xml.
(popup_folder_menu): pass the BonoboUIContainer to the
populate_folder_context_menu CORBA call, instead of the component.
Also, reorder things a bit so the component doesn't get an error
when setting xml the first time.
2001-05-11 Iain Holmes <iain@ximian.com>
* e-shell-folder-selection-dialog.c (dbl_click_cb): Use gnome_dialog_close
instead of gtk_widget_destroy.
(impl_clicked): Use gnome_dialog_close instead of gtk_widget_destroy.
* e-shell-view-menu.c: #include e-shell-importer.h instead of importer/importer.h
* importer/Makefile.am: Remove importer.c and importer.h.
* importer/importer.[ch]: Moved these to e-shell-importer.[ch]
* e-shell-importer.c (start_import): Take a folderpath to import into.
(importer_druid_finish): Show the EShellFolderSelectionDialog to get a folder to
import into.
2001-05-11 JP Rosevear <jpr@ximian.com>
* e-component-registry.c (register_component): component_new refs
the object itself, so unref ours when we finish with it
* e-shell.c (e_shell_construct): There is no need to explicitly
ref the folder type registry, storage set and shortcuts because we
are the creator and hold the initial ref count of 1.
2001-05-11 Dan Winship <danw@ximian.com>
* e-local-storage.c (load_folder): Lots of people seem to have
"broken" local storage hierarchies. So ignore errors (like the old
code did) and just print a warning.
2001-05-11 Chris Toshok <toshok@ximian.com>
* evolution-storage-set-view-factory.c
(evolution_storage_set_view_factory_new_view): the only
problematic area - pass NULL for now in as the BonoboUIContainer.
how do we pass this container to the control?
* e-storage-set-view.c (folder_context_menu_activate): un-#if 0
this function.
(populate_folder_context_menu_with_common_items): build our popup
using the new xml bonobo stuffs.
(popup_folder_menu): convert to using the new xml bonobo stuffs.
(right_click): only do the popup menu if we have a
BonoboUIContainer.
(e_storage_set_view_new): add BonoboUIContainer* arg.
(e_storage_set_view_construct): same.
* e-storage-set-view.h: add BonoboUIContainer* args to
e_storage_set_view_new and e_storage_set_view_construct.
* e-shell-folder-creation-dialog.c (add_storage_set_view): pass
NULL for the BonoboUIContainer, since we shouldn't (?) have a
popup in this dialog.
* e-shell-folder-selection-dialog.c
(e_shell_folder_selection_dialog_construct): pass NULL for the
BonoboUIContainer, since we shouldn't (?) have a popup in this
dialog.
* e-storage-set.h: add BonoboUIContainer* arg to
e_storage_set_new_view.
* e-storage-set.c (e_storage_set_new_view): add arg, and track
change to e_storage_set_view_new.
* e-shell-view.h: add prototype for
e_shell_view_get_bonobo_ui_container.
* e-shell-view.c (setup_storage_set_subwindow): track change to
e_storage_set_view_new.
(e_shell_view_construct): the BonoboUIContainer is now part of our
private structure.
(e_shell_view_get_bonobo_ui_container): new function.
2001-05-09 Christopher James Lahey <clahey@ximian.com>
* importer/intelligent.c (create_gui): Made this function static.
Removed the unused variable placeholder.
(intelligent_importer_init): Cast from gpointer to int here
properly using GPOINTER_TO_INT.
2001-05-09 Dan Winship <danw@ximian.com>
* e-local-storage.c: Remove get_physical_path and load_folders,
and replace the calls to them with calls to the e_path_* functions
they inspired.
2001-05-08 Dan Winship <danw@ximian.com>
* glade/e-active-connection-dialog.glade: Rename "port" to "type"
here too.
2001-05-08 Iain Holmes <iain@ximian.com>
* importer/evolution-importer-client.c (evolution_importer_client_load_file):
Actually use the duplicated value.
* e-local-storage.c (create_folder_directory): Assign
physical_path_return before trying to create the directory.
(create_folder): Return the physical_path even if the directory
creation failed. Free the physical path.
* importer/evolution-importer-client.[ch]: Make EvolutionImporterClient
from a GtkObject instead of a BonoboObject.
* importer/importer.c: Use gtk_object_unref instead of
bonobo_object_unref on the clients.
* importer/intelligent.c: New prettier dialog, and multiple importers
done in the same window.
2001-05-07 Dan Winship <danw@ximian.com>
* e-shell-offline-handler.c (update_dialog_clist_hash_foreach):
Fix a free of non-malloc'ed memory introduced by my last change.
2001-05-07 Jon Trowbridge <trow@ximian.com>
* e-shell-view-menu.c (update_offline_menu_item): Changed some
references to /commands/WorkOffline to /commands/ToggleOffline.
2001-05-04 Chris Toshok <toshok@ximian.com>
* evolution-shell-component-dnd.c
(impl_GNOME_Evolution_ShellComponentDnd_DestinationFolder_handleMotion):
take a physical_uri and pass it to the callback.
(impl_GNOME_Evolution_ShellComponentDnd_DestinationFolder_handleDrop):
same.
* evolution-shell-component-dnd.h: add physical_uri args to the
destination folder HandleMotion and HandleDrop types.
* Evolution-ShellComponentDnd.idl: add "in string physical_uri" to
DestinationFolder::handleMotion and DestinationFolder::handleDrop.
* e-storage-set-view.c (tree_drag_motion): pass the physical uri
of the folder to handleMotion.
2001-05-04 Dan Winship <danw@ximian.com>
* e-shell-offline-handler.c (update_dialog_clist_hash_foreach,
(duplicate_connection_list): Use type instead of portNumber.
(e_shell_offline_handler_put_components_offline): Fix the logic of
when to show the connection dialog here. (Show it when there *are*
connections, not when there aren't.)
* Evolution-Offline.idl: Have a "string type" instead of "short
portNumber" in Connection.
2001-05-04 Ettore Perazzoli <ettore@ximian.com>
* e-shell-offline-handler.c
(e_shell_offline_handler_put_components_offline): Only display the
dialog if there are active connections. [It was displaying it all
the time before just for testing purposes.]
2001-05-04 Ettore Perazzoli <ettore@ximian.com>
* evolution-storage.c (evolution_storage_new_folder): Ooops. The
`corba_folder' is needed after returning; don't free it.
2001-05-04 Ettore Perazzoli <ettore@ximian.com>
* evolution-storage.c (evolution_storage_new_folder): Free the
`corba_folder' when not needed anymore.
* e-local-storage.c (create_folder_directory): Free the parent
path, and don't allocate it when we don't need it.
* evolution-shell-component-client.c (dispatch_callback): Free the
listener servant too.
(impl_destroy): Release the listener object and free the servant
if it exists.
2001-05-04 Ettore Perazzoli <ettore@ximian.com>
* e-shell-folder-creation-dialog.c (dialog_clicked_cb): Don't
strdup `path' before copying it into the `dialog_data'.
2001-05-04 Ettore Perazzoli <ettore@ximian.com>
* importer/intelligent.c (get_intelligent_importers): Free the
`info_list' returned by `oaf_query()', thus plugging a leak.
2001-05-04 Ettore Perazzoli <ettore@ximian.com>
* e-shell-utils.c (get_icon_path): Don't use
`gnome_pixmap_file()', which is broken as it looks in the current
working directory first. Instead, if the path is not absolute,
just look up the file in the `EVOLUTION_IMAGES' directory.
2001-05-03 Ettore Perazzoli <ettore@ximian.com>
* glade/e-active-connection-dialog.c: Change the GtkCList mode to
GTK_BROWSE_SINGLE.
2001-05-03 Ettore Perazzoli <ettore@ximian.com>
* e-shell-offline-handler.c
(impl_OfflineProgressListener_updateProgress): Update the GtkCList
before emitting the "offline_procedure_finished" signal. In fact,
we might be destroyed from within the signal handlers and then
things would get messy.
* evolution-shell-component-client.c
(evolution_shell_component_client_get_offline_interface):
"IDL:GNOME/Evolution/Offline:1.0", not
"IDL:GNOME/Evolution/ShellComponent/Offline:1.0". Sigh.
* e-shell-view-menu.c: Update to match the rename of the
`WorkOffline' menu item in the `File' menu into `ToggleOffline'.
Now the `WorkOffline' verb actually puts the shell offline, while
`WorkOnline' puts in online, so we don't use one single verb to
toggle the online/offline status.
(command_work_offline): Only go offline.
(command_work_online): New. Make the shell go online.
(update_offline_menu_item): New.
(shell_line_status_changed_cb): New, callback for the
"line_status_changed" signal on the associated EShell.
2001-05-03 Ettore Perazzoli <ettore@ximian.com>
* e-shell-offline-handler.c: New member `dialog_gui' in
`EShellOfflineHandlerPrivate'.
(impl_destroy): Unref here if not NULL.
(init): Init to NULL.
(update_dialog_clist_hash_foreach): New.
(update_dialog_clist): New.
(dialog_clicked_cb): New, callback for the "clicked" signal on the
active connection dialog.
(pop_up_confirmation_dialog): Implemented.
(init): Init `procedure_in_progress' to `FALSE' instead of `TRUE'.
(cancel_offline): Emit `offline_procedure_finished'.
(impl_OfflineProgressListener_updateProgress): Call
`update_dialog_clist()'.
* glade/e-active-connection-dialog.glade: New.
* e-shell-view-menu.c: Update to use the `WorkOffline' verb
instead of the `WorkOffLine' one.
(command_work_offline): New, temporary implementation for the
"WorkOffline" verb.
* e-shell-view.c (shell_line_status_changed_cb): New, callback for
the shell's `line_status_changed' signal.
(e_shell_view_construct): Connect it.
* e-shell.c: New member `line_status' in `EShellPrivate'.
(init): Init to `E_SHELL_LINE_STATUS_ONLINE'.
(class_init): Set up the `line_status_changed' signal.
(e_shell_is_offline): Removed.
(e_shell_get_line_status): New.
(e_shell_go_online): Set the `line_status' member to
`E_SHELL_LINE_STATUS_ONLINE' and emit `line_status_changed'.
(offline_procedure_started_cb): New, signal for the
`offline_procedure_started' signal in EShellOfflineHandler.
(offline_procedure_finished_cb): New, signal for the
`offline_procedure_finished' signal in EShellOfflineHandler.
(e_shell_go_offline): Implemented.
* e-shell.h: New enum `EShellLineStatus'. New signal
`line_status_changed'.
2001-05-03 Ettore Perazzoli <ettore@ximian.com>
* e-shell-offline-handler.c (e_shell_offline_handler_construct):
Unset the `GTK_FLOATING' flag.
2001-05-02 Ettore Perazzoli <ettore@ximian.com>
* e-shell.c: New members `is_offline' and `offline_handler' in
`EShellPrivate'.
(init): Init `is_offline' to %FALSE, `offline_handler' to %NULL.
(e_shell_is_offline): New.
(e_shell_go_online): New.
(e_shell_go_offline): New.
* e-shell-offline-handler.c: New.
* e-shell-offline-handler.h: New.
* evolution-shell-component-client.c: New member
`offline_interface' in `EvolutionShellComponentClientPrivate'.
(init): Init to `CORBA_OBJECT_NIL'.
(impl_destroy): Unref/release if not NIL.
(evolution_shell_component_client_get_offline_interface): New.
* Evolution-Offline.idl: New.
2001-05-02 Chris Toshok <toshok@ximian.com>
* evolution-shell-component-dnd.c: new file.
* evolution-shell-component-dnd.h: new file.
* Makefile.am (libeshell_a_SOURCES): add
evolution-shell-component-dnd.[ch].
2001-04-25 Dan Winship <danw@ximian.com>
* Makefile.am (evolution_LDADD): Remove $(UNICODE_LIBS).
* main.c (main): Remove call to unicode_init.
2001-04-25 JP Rosevear <jpr@ximian.com>
* evolution-shell-client.c (destroy): free the private member
2001-04-25 Kjartan Maraas <kmaraas@gnome.org>
* e-component-register.c, e-corba-storage.c, e-folder-tree.c,
e-folder-tree.h, e-folder.c, e-local-folder.c, e-shell.c,
e-shortcuts-view-model.c, e-shortcuts.c, e-splash.c,
e-storage-set-view.c, e-storage-set.c, evolution-local-storage.c,
evolution-shell-component-client.c, evolution-shell-component.c,
evolution-storage.[ch], importer/evolution-importer-client.[ch],
importer/evolution-importer-listener.[ch],
importer/evolution-importer.[ch],
importer/evolution-intelligent-importer.[ch], importer/intelligent.c:
#include <glib.h> and move corresponding local includes to the top.
2001-04-23 Jeffrey Stedfast <fejj@ximian.com>
* e-splash.c: #include gnome-window-icon.h
2001-04-21 Duncan Mak <duncan@ximian.com>
* e-splash.c (e_splash_construct): Set window_icon to
"evolution.png" in the splash screen.
2001-04-18 Ettore Perazzoli <ettore@ximian.com>
* e-local-folder.c: #include <unistd.h>.
2001-04-17 Christopher James Lahey <clahey@ximian.com>
* e-shell-view.c (storage_set_view_box_event_cb): Proxy events to
the tooltip object properly.
2001-04-15 Ettore Perazzoli <ettore@ximian.com>
* e-shell-folder-selection-dialog.c
(folder_creation_dialog_result_cb): Set the current folder only if
@result is `E_SHELL_FOLDER_CREATION_DIALOG_RESULT_SUCCESS'.
* e-shell-folder-creation-dialog.c (folder_name_entry_changed_cb):
Changed to get a pointer to the DialogData instead of just a
pointer to the dialog itself. Don't set the OK button sensitive
if there is no folder selected in the storage set view.
(setup_folder_name_entry): Don't connect
`folder_name_entry_changed_cb' anymore.
(e_shell_show_folder_creation_dialog): Connect here instead.
(storage_set_view_folder_selected_cb): New callback for the
"folder_selected" signal in the EStorageSetView. Make the OK
button sensitive if the entry is non-empty.
(e_shell_show_folder_creation_dialog): Connect it.
2001-04-14 Michael Meeks <michael@ximian.com>
* Makefile.am (dist-hook): remove built sources from dist.
2001-04-13 Ettore Perazzoli <ettore@ximian.com>
* e-splash.c (impl_destroy): Call the parent class' ::destroy
method.
2001-04-12 Christopher James Lahey <clahey@ximian.com>
* e-storage-set-view.c (etree_has_get_node_by_id,
etree_get_node_by_id): Implemented these.
2001-04-11 Dan Winship <danw@ximian.com>
* e-shell-view.c (switch_on_folder_tree_click): Don't get into an
infinite loop when clicking on an IMAP storage. Might not be the
best fix?
2001-04-08 Chris Toshok <toshok@ximian.com>
* e-storage-set-view.c (tree_drag_motion): fix type. we want the
destination interface, not source.
2001-04-04 Kjartan Maraas <kmaraas@gnome.org>
* e-local-folder.c: Fix headers.
* e-shell-view.c: Same here.
* e-shortcuts-view.c: Same here.
* e-shortcuts.c: Same here.
* e-storage-set-view.c: Same here.
2001-04-04 Gediminas Paulauskas <menesis@delfi.lt>
* importer/importer.c (create_html): copied newer and fixed function
from mail/mail-config-druid.c.
(html_new, put_html): removed.
(show_import_wizard): use create_html instead of html_new/put_html pair.
* importer/importer.glade: a try to set logo. removed source generation
options.
2001-04-03 Dan Winship <danw@ximian.com>
* main.c:
* evolution-shell-component-client.c: Don't declare debug_log as
extern in evolution-shell-component-client.c, because that's part
of libeshell and so gets linked into the other components.
Instead, declare it there and extern it from main.c.
(Noticed by Peter Williams)
2001-04-03 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view.c (get_control_for_uri): Change `! folder_type'
with `folder_type == NULL'.
* e-corba-storage-registry.c (impl_StorageRegistry_addStorage): If
the toplevel node URI or the toplevel node type are an empty
string, use NULL Instead.
2001-04-03 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view.c: Fix bug #1878 "folder sometimes fails to
display?". Thanks to Dan for finding out an explanation for the
problem.
(e_shell_view_display_uri): Don't set `priv->uri' here.
(show_existing_view): Set it here instead, and before showing the
control.
(create_new_view_for_uri): And here, likewise.
2001-04-03 Christopher James Lahey <clahey@ximian.com>
* e-shell-folder-selection-dialog.c (dbl_click_cb): Made double
clicking not crash here.
2001-04-02 Ettore Perazzoli <ettore@ximian.com>
* e-setup.c (e_setup): If we have a local folder named "Trash" of
type "mail", rename it to "Trash.old" so that the new
vfolder-based trash type gets installed.
2001-04-03 Gediminas Paulauskas <menesis@delfi.lt>
* importer/evolution-importer-client.c (evolution_importer_client_load_file):
fix Iain's fix which did nothing. closes #1914.
2001-03-31 Christopher James Lahey <clahey@ximian.com>
* evolution-storage-set-view.c: Include <gal/util/e-util.h> here.
2001-04-01 Gediminas Paulauskas <menesis@delfi.lt>
* e-shell-view-menu.c: set up menu icons for new folder, import and work
offline.
2001-03-30 Iain Holmes <iain@ximian.com>
* importer/importer.c (start_import): If the importer can't be started, then
don't continue.
2001-03-29 Iain Holmes <iain@ximian.com>
* importer/evolution-importer-client.c (evolution_importer_client_load_file):
Duplicate the folderpath, or set it to \0
2001-03-30 Christopher James Lahey <clahey@ximian.com>
* e-shell-folder-selection-dialog.c (dbl_click_cb): Since this is
an ETree now, the signature of the double click callback has
changed.
2001-03-30 Dan Winship <danw@ximian.com>
* Evolution-ShellComponent.idl: add a "debug" method to tell a
component to output debugging messages to a given file.
* main.c (main): Add a "--debug filename" argument, to direct
debugging output for all components to a file. Redirect the
shell's stdout/stderr to that file if this argument is used.
* evolution-shell-component-client.c
(evolution_shell_component_client_set_owner): If debug_log is set,
call the component's debug method as well.
* evolution-shell-component.c (impl_ShellComponent_debug):
redirect stdout/stderr to the named file and emit a "debug"
signal.
2001-03-29 Kjartan Maraas <kmaraas@gnome.org>
* e-component-registry.c: Remove/replace unneeded includes and
move around stuff so that system headers are included first.
* e-corba-storage.c: Replace #include <bonobo.h>
* e-folder-tree.c: Shuffle.
* e-folder.c: Remove #include <gtk/gtkobject.h>
* e-local-storage.c: Replace #include <gnome.h> and <bonobo.h>
* e-setup.c: Replace #include <glib.h> and <gnome.h>
* e-shell-folder-creation-dialog.c: Replace #include <gnome.h>
* e-shell-folder-title-bar.c: Replace <gnome.h>
* e-shell-utils.c: Same here.
* e-shell-view-menu.c: Same here (and <bonobo.h>)
* e-shell-view.c: Replace <gnome.h> and <bonobo.h>
* e-shell.c: Replace <gnome.h>
* e-shell.h: Shuffle.
* e-shortcuts-view-model.c: Replace <gnome.h>
* e-shortcuts-view.c: Remove #include <gnome.h>
* e-shortcuts.c: Move <string.h> up.
* e-splash.c: Replace <gnome.h>
* e-storage-set-view.c: Replace <gnome.h>
* e-storage-set.c: Shuffle
* e-storage.c: Replace <gnome.h>
* evolution-local-storage.c: Same here
* evolution-local-storage.h: And here.
* evolution-session.c: Same here too.
* evolution-session.h: Replace <bonobo.h>
* evolution-shell-client.c: Here too.
* evolution-shell-component-client.c: Shuffle.
* evolution-shell-component.c: Replace <bonobo.h>
* evolution-shell-view.c: Remove #include <bonobo.h>
* evolution-shell-view.h: Replace <gnome.h>
* evolution-storage-listener.c: Replace <gnome.h> and <bonobo.h>
* evolution-storage-listener.h: Replace <gnome.h>
* evolution-storage-set-view-listener.c: Replace <gnome.h> and <bonobo.h>
* evolution-storage-set-view.c: Remove <gnome.h>
* evolution-storage.c: Replace <bonobo.h>
* main.c: Replace <gnome.h> and <bonobo.h>
* importer/importer.c: Replace <gnome.h>
* importer/intelligent.c: Replace <gnome.h>. Add prototype for
intelligent_importer_init().
* importer/intelligent.h: Added this file.
2001-03-28 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c (folder_sort_callback): Use
`g_strcasecmp()' instead of `strcasecmp()'.
2001-03-28 Christopher James Lahey <clahey@ximian.com>
* e-storage-set-view.c (storage_sort_callback,
folder_sort_callback): Use strcasecmp instead of strcmp.
2001-03-28 Ettore Perazzoli <ettore@ximian.com>
* e-local-storage.c (async_xfer_folder_callback):
s/new_folder/destination_folder/ where appropriate, idiot.
2001-03-28 Jon Trowbridge <trow@gnu.org>
* e-shell-view-menu.c: In a fit of egomania, added myself to the
authors array.
2001-03-26 Ettore Perazzoli <ettore@ximian.com>
* evolution-shell-component-client.c
(shell_component_result_from_corba_exception): Implement.
2001-03-26 Ettore Perazzoli <ettore@ximian.com>
* evolution-shell-component-client.c
(evolution_shell_component_client_async_xfer_folder): Handle CORBA
exception.
(evolution_shell_component_client_async_create_folder): Likewise.
* e-local-storage.c (create_folder_directory): Create the
`subfolders' directory if it doesn't exist.
* e-storage-set-view.c (tree_drag_data_received): Build the
correct target path by appending the basename from the source
path.
* evolution-shell-component.c
(impl_ShellComponent_async_xfer_folder): Enabled again.
(class_init): Install it.
* e-local-folder.c (METADATA_FILE_NAME_LEN): Removed #define.
(METADATA_FILE_NAME): Removed #define.
(save_metadata): Use the public
`E_LOCAL_FOLDER_METADATA_FILE_NAME' value instead.
(construct_loading_metadata): Likewise.
* e-local-folder.h (E_LOCAL_FOLDER_METADATA_FILE_NAME_LEN): New
#define.
(E_LOCAL_FOLDER_METADATA_FILE_NAME): New #define.
* e-local-storage.c (remove_folder_directory): New helper
function.
(async_xfer_folder_step): New.
(async_xfer_complete): New.
(async_xfer_folder_callback): New.
(impl_async_xfer_folder): Implement.
* e-storage.h: Added value `E_STORAGE_NOTEMPTY' to
`EStorageResult'.
* evolution-shell-component-client.c
(evolution_shell_component_clinet_async_xfer_folder): New.
2001-03-23 Ettore Perazzoli <ettore@ximian.com>
* e-local-storage.c (impl_async_xfer_folder): New, implementation
for `EStorage::async_xfer_folder'.
(class_init): Install it.
(check_valid_name): Removed. Conflicts shouldn't be handled this
way, and hardcoding the names is *bad*.
(create_folder_directory): New helper function.
(real_do_folder_create): Removed.
(create_folder): New. Do things here using
`create_folder_directory'.
(impl_async_create_folder): Use `create_folder'.
(notify_bonobo_listener): Renamed from `notify_listener'. Moved
on top for clarity.
2001-03-22 Iain Holmes <iain@ximian.com>
* importer/evolution-importer-listener.c (evolution_importer_listener_new):
Remove the usage of the corba_object thing.
(evolution_importer_listener_construct): Ditto.
* e-local-storage.c (real_do_folder_create): Revert the e_mkdir_hier call
to two seperate calls to mkdir. If the directory exists, just call the
callback and notify the listener.
* importer/GNOME_Evolution_Importer.idl: Add a folderpath paramater to the
loadFile method.
* importer/evolution-importer.[ch]: Update for the new folderpath param.
* importer/evolution-importer-client.[ch]: Ditto.
* importer/importer.c: Ditto.
2001-03-22 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c (motion_notify_event): Unref the target
list we create on the fly.
2001-03-22 Ettore Perazzoli <ettore@ximian.com>
* e-shell-folder-creation-dialog.c (async_create_cb): Changed
signature to match `EStorageSetResultCallback' instead of
`EStorageResultCallback', to match the changes in the async_create
API call.
2001-03-22 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c: Removed some unused static variables.
(set_evolution_path_selection): Removed unused variable
`evolution_path'.
* e-storage-set.c (e_storage_set_async_xfer_folder): Get an
`EStorageSetResultCallback', instead of an
`EStorageResultCallback'.
(e_storage_set_async_remove_folder): Likewise.
(e_storage_set_async_create_folder): Likewise.
(storage_callback_converter): New callback to convert from the
EStorageResultCallback to the EStorageSetResultCallback.
* e-storage-set.h: New typedef `EStorageSetResultCallback'.
* Evolution-ShellComponent.idl: Renamed `copyFolderAsync' into
`xferFolderAsync' for consistency.
* e-storage-set-view.c (tree_drag_data_received): Updated to use
`e_storage_set_async_xfer_folder()' instead of
`e_storage_set_async_move_folder()' or
`e_storage_set_async_copy_folder()'.
(folder_xfer_callback): New, callback for the xfer function.
* e-storage-set.c (e_storage_set_async_move_folder): Removed.
(e_storage_set_async_copy_folder): Removed.
(e_storage_set_async_xfer_folder): New.
2001-03-22 Ettore Perazzoli <ettore@ximian.com>
* e-storage.c (e_storage_async_xfer_folder): New.
(impl_async_xfer_folder): New, default implementation for the
`async_xfer_folder' method.
(class_init): Install it.
* e-storage.h: New virtual method `async_xfer_folder'.
* evolution-storage.c (impl_Storage_async_xfer_folder): New. Just
a stub for now.
(evolution_storage_get_epv): Install it as the implementation for
the `asyncXferFolder' method.
* Evolution-Storage.idl: New method `asyncXferFolder'.
2001-03-22 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c: Removed `source_drag_types',
`num_source_drag_types', `destination_drag_types',
`num_destination_drag_types', `target_list'.
(E_SHORTCUT_TARGET_TYPE): Renamed from "E_SHORTCUT_TYPE".
(EVOLUTION_PATH_TARGET_TYPE): Define to "_EVOLUTION_PRIVATE_PATH".
(find_matching_target_for_drag_context): If any of the targets
matches it, return it.
(handle_evolution_path_drag_motion): New.
(tree_drag_motion): Use it if we are matching an
`EVOLUTION_PATH_TARGET_TYPE' target.
(e_storage_set_view_construct): Call `e_tree_drag_dest_set()' on
the view so that we become a possible DnD target.
(get_folder_at_node): Don't die if you don't find a folder there.
(create_target_entries_from_dnd_type_list): Make the first entry
an `EVOLUTION_PATH_TARGET_TYPE', the second one an
`E_SHORTCUT_TYPE', and the following ones the ones defined by the
folder.
(set_evolution_path_selection): New function to set the private
Evolution path selection.
(set_e_shortcut_selection): Assert @selection_data to be not NULL.
(class_init): Don't set up the `target_list' anymore.
(storage_sort_callback): Actually compare the two nodes, not the
first node with itself.
* e-storage-set.c (e_storage_set_async_copy_folder): New.
(e_storage_set_async_move_folder): New.
2001-03-22 Christopher James Lahey <clahey@ximian.com>
* e-storage-set-view.c (etree_get_save_id): Changed get_save_id to
just return a strdup of the path.
(new_storage_cb, new_folder_cb, insert_folders, insert_storages):
Call e_tree_memory_sort_node.
2001-03-21 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c (etree_get_save_id): If we have no
associated StorageSet yet, just return "root". [This can happen
when this function is called at construction time.]
2001-03-21 Ettore Perazzoli <ettore@ximian.com>
* Evolution-ShellComponentDnd.idl: StudlyCapsify struct members to
match the new IDL naming standards.
* e-storage-set-view.c: Updated accordingly.
2001-03-21 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c (tree_drag_data_get): Get the target type
from the atom, and pass it through the `SourceFolder::getData'
invocation. Also, signal an error by passing `-1' as the length
value to `gtk_selection_data_set()'.
(find_matching_target_for_drag_context): New helper function.
(tree_drag_motion): Use it to figure out a suitable type for the
drop action, and pass it to the `DestinationFolder::handleMotion'
method.
* e-storage-set-view.c (get_component_at_node): New helper
function.
(table_drag_begin): Use it.
(convert_corba_drag_action_to_gdk): New helper function.
(table_drag_motion): Use the `DestinationFolder::handleMotion'
method to handle the "drag_motion" signal.
* Evolution-ShellComponentDnd.idl: Change the signature for the
`handleMotion' method so that it only has @suggested_action
parameter.
2001-03-20 JP Rosevear <jpr@ximian.com>
* importer/Makefile.am: make sure intelligent.h gets disted
2001-03-19 Christopher James Lahey <clahey@ximian.com>
* Merged e-tree-rework-branch:
2001-03-19 Christopher James Lahey <clahey@ximian.com>
* e-storage-set-view.c (etree_get_save_id): Made "root" detection
deal properly with removed nodes.
2001-03-18 Christopher James Lahey <clahey@ximian.com>
* e-shell-view.c (e_shell_view_save_settings): Added some unused
code to implement saving of the expanded state.
* e-storage-set-view.c: Added has_save_id and get_save_id methods.
2001-03-13 Christopher James Lahey <clahey@ximian.com>
* e-storage-set-view.c (ETREE_SPEC): Set draw-grid here to false.
2001-03-09 Christopher James Lahey <clahey@ximian.com>
* e-storage-set-view.c, e-storage-set-view.h: Chaned this to use
ETree instead of ETable.
2001-03-19 Ettore Perazzoli <ettore@ximian.com>
* evolution-shell-component-client.c: New members
`dnd_source_folder_interface' and
`dnd_destination_folder_interface' in
`EvolutionShellCompoentClientPrivate'.
(init): Initialize.
(impl_destroy): Clean up.
(evolution_shell_component_client_get_dnd_source_interface): New.
(evolution_shell_component_client_get_dnd_destination_interface):
New.
2001-03-19 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c (init): Ooops. Initialize the
`drag_corba_source_context' member. correctly.
(table_drag_begin): Don't crash if queryInterface returns
`CORBA_OBJECT_NIL'.
(table_drag_end): Don't do anything if the
`drag_corba_source_interface' is `CORBA_OBJECT_NIL'.
2001-03-19 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c New members `drag_data',
`drag_corba_source_interface' and `drag_corba_source_context in
`EStorageSetViewPrivate'.
(init): Init the new members.
(destroy): Clean up the new members.
(table_drag_begin): Query for the
`EvolutionShellComponentDnd::SourceFolder' interface on the
handler for the folder we are dragging from, and initialize all
the CORBA context information for the drag, after invoking
`::beginDrag()' on it.
(convert_gdk_drag_action_to_corba): New helper function.
(table_drag_data_get): Get the data using
`::SourceFolder::getData'.
(table_drag_end): New, override for the "ETable::table_drag_end"
signal. Invoke `::endDrag' on the SourceFolder interface,
unref/release the interface, and clean up the source context.
(table_drag_data_delete): New, override for the
"ETable::table_drag_data_delete" signal.
(class_init): Install `table_drag_end' and
`table_drag_data_delete'.
* Evolution-ShellComponentDnd.idl: Derive `::DestinationFolder'
and `SourceFolder' from `Bonobo::Unknown'.
2001-03-19 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c (table_drag_data_get): Don't get the
selection through
`evolution_shell_component_client_get_dnd_selection()'.
* evolution-shell-component.c
(impl_ShellComponent_getDndSelection): Removed.
(class_init): Don't install.
* evolution-shell-component-client.c
(evolution_shell_component_client_get_dnd_selection): Removed.
* Evolution-ShellComponentDnd.idl: New file with the DnD stuff.
* Evolution-ShellComponent.idl: Removed the dnd stuff.
2001-03-15 Pablo Saratxaga <pablo@mandrakesoft.com>
* main.c: fixed a no-c-format tag
2001-03-14 Ettore Perazzoli <ettore@ximian.com>
* importer/Makefile.am (INCLUDES): Remove `-g Wall' and friends.
Use `$(EXTRA_GNOME_CFLAGS)' instead of `$(GNOME_INCLUDEDIR)'. Add
`-I$(top_builddir)/shell'.
2001-03-13 Iain Holmes <iain@ximian.com>
* importer/intelligent.c (start_importer): Add a "Don't ask me again"
checkbox and don't ask about an importer if the box was ticked.
2001-03-12 Iain Holmes <iain@ximian.com>
* Evolution-Storage.idl: Add a FolderResult structure.
* e-local-storage.c (struct _AsyncCreateFolderCallbackData): Add a
Bonobo_Listener.
(notify_listener): Function to...notify the listener.
(component_async_create_folder_callback): Use the notify_listener
function.
(real_do_folder_create): New prototype. Replace all returns with
a call to notify_listener. Make the directory with a call to
e_mkdir_hier instead of multiple calls to mkdir. Only emit a fail
on a bad error, not on EEXIST.
(bonobo_interface_create_folder_cb): Namespace create_folder_cb to match
the others.
e-shell.c: Run the intelligent importer.
evolution-storage.c (impl_Storage_async_create_folder): Just emit the signal,
not the callback.
(e_marshal_NONE__POINTER_POINTER_POINTER_POINTER_POINTER): Lovely signal
marshaller.
(class_init): Change the signal definition for the create_folder signal.
importer/GNOME_Evolution_Importer.idl: Add an IntelligentImporter inteface.
importer/Makefile.am: Add the evolution-intelligent-importer.c, intelligent.c
and evolution-intelligent-importer.h to the files.
importer/evolution-importer-listener.[ch]: Convert to BonoboXObject.
importer/evolution-importer.[ch]: BonoboXObjectification.
importer/evolution-intelligent-importer.[ch]: BonoboXObject for the
GNOME:Evolution:IntelligentImporter interface.
importer/intelligent.c: Code for running the intelligent importers.
2001-03-08 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c (get_folder_at_row): New helper function.
(create_target_list_for_row): Use it.
(table_drag_data_get): Get the selection from the shell component
using `evolution_shell_component_client_get_dnd_selection()'.
(set_e_shortcut_selection): Turn a `g_return_if_fail()' into a
`g_assert()'.
* evolution-shell-component.c: New member `get_dnd_selection_fn'
in `EvolutionShellComponentPrivate'.
(evolution_shell_component_construct): New arg
@get_dnd_selection_fn.
(evolution_shell_component_new): Likewise.
(impl_ShellComponent_getDndSelection): New, implementation for
`ShellComponent::getDndSelection'.
(class_init): Install it.
* evolution-shell-component-client.c
(evolution_shell_component_client_get_dnd_selection): New, wrapper
for `ShellComponent::getDndSelection'.
* evolution-shell-component.h: Renamed
`EvolutionShellComponentPopulateFolderContextMenu' into
`EvolutionShellComponentPopulateFolderContextMenuFn'. New
function pointer typedef `EvolutionShellComponentGetDndSelectionFn'.
* Evolution-ShellComponent.idl: New method
`ShellComponent::getDndSelection'.
* e-storage-set-view.c (create_target_entries_from_dnd_type_list):
Always add an `E_SHORTCUT_TYPE' type at least.
(create_target_list_for_row): Don't return NULL if the list of
exported DND types is NULL. Don't create an unused target list.
Actually return the created target list.
(table_drag_data_get): If the @info is zero, set the e-shortcut
selection.
(set_uri_list_selection): Temporarily disabled.
2001-03-07 Ettore Perazzoli <ettore@ximian.com>
* e-component-registry.c (register_type): New args
@num_exported_dnd_types, @exported_dnd_types,
@num_accepted_dnd_types, @accepted_dnd_types. Pass them to
`e_folder_type_registry_register_type()'.
(register_component): Updated accordingly, getting the values from
the CORBA `GNOME::Evolution::FolderType' struct.
* e-folder-type-registry.c: New members `accepted_dnd_types' and
`exported_dnd_types' in `struct _FolderType'.
(e_folder_type_registry_register_type): New args
@num_accepted_dnd_types, @accepted_dnd_types,
@num_exported_dnd_types, @exported_dnd_types.
(register_folder_type): Likewise.
(folder_type_new): Likewise. Use them to initialize
`accepted_dnd_types' and `exported_dnd_types' in the newly created
`FolderType' struct.
(e_folder_type_registry_get_accepted_dnd_types_for_type): New.
(e_folder_type_registry_get_exported_dnd_types_for_type): New.
* e-storage-set-view.c: New #defined constant `DRAG_RESISTANCE'.
New members `drag_x', `drag_y', `drag_column', `drag_row' in
`EStorageSetViewPrivate'.
(init): Initialize them.
(button_press_event): New function, overriding for the
`::button_press_event' method.
(motion_notify_event): New function, overriding for the
`::motion_notify_event' method.
(class_init): Install them.
* evolution-shell-component.c
(duplicate_null_terminated_string_array): New helper function.
(evolution_shell_component_construct): Copy the values for
`accepted_dnd_types' and `exported_dnd_types' from the original
folder type list using it.
(destroy): Free the `exported_dnd_types' and `accepted_dnd_types'
members too.
(fill_corba_sequence_from_null_terminated_string_array): New
helper function.
(impl_ShellComponent__get_supported_types): Also set the
`exported_dnd_types' and `accepted_dnd_types' values in the folder
type elements we return.
* evolution-shell-component.h: Added `accepted_dnd_types' and
`exported_dnd_types' members to `EvolutionShellComponentFolderType'.
* Evolution-ShellComponent.idl: Renamed `accepted_dnd_mime_types'
to `accepted_dnd_types' and `exported_dnd_mime_types' to
`exported_dnd_types'. These are not necessarily MIME types.
2001-03-05 Christopher James Lahey <clahey@ximian.com>
* e-storage-set-view.c: Override cursor_activated signal instead
of cursor_changed signal.
2001-02-27 Dan Winship <danw@ximian.com>
* main.c (development_warning): Update this again.
2001-02-26 Ettore Perazzoli <ettore@ximian.com>
* Evolution-Shell.idl: Rename `FolderTypeList' to
`FolderTypeNameList' as it was confusing.
* Evolution-ShellComponent.idl: New members
`accepted_dnd_mime_types' and `exported_dnd_mime_types' in `struct
FolderType'.
2001-02-24 Jeffrey Stedfast <fejj@ximian.com>
* e-storage.c (folder_changed_cb): Don't free a const pointer.
2001-02-23 Iain Holmes <iain@ximian.com>
* e-local-storage.c (construct): Connect to the create-folder signal.
(impl_async_create_folder): Move this into the real_do_folder_create
function.
(real_do_folder_create): Function that creates the folder.
(create_folder_cb): Creates the folder form a callback.
2001-02-21 Michael Meeks <michael@ximian.com>
* importer/importer.c: add include.
(show_import_wizard): update signature to that of a verb.
* evolution-shell-component.c (corba_class_init): move into
(class_init): here & upd.
(evolution_shell_component_construct): upd.
(create_servant): kill.
(E_MAKE_TYPE) -> E_MAKE_X_TYPE.
2001-02-20 Dan Winship <danw@ximian.com>
* e-folder.c (_EFolderPrivate): split "highlighted" into
self_highlight and child_highligh.
(e_folder_get_highlighted): Return TRUE if either self_highlight
is true or any child is highlighted.
(e_folder_set_child_highlight): New function to tell the folder
about a child highlight change.
* e-storage.c (folder_changed_cb): Update child highlights
correctly on folders so that folders will be highlighted whenever
their children are.
2001-02-17 Christopher James Lahey <clahey@ximian.com>
* e-shell-view-menu.c (file_verbs): Cast this fucntion pointer.
* e-storage-set-view.c (ETABLE_SPEC): Turn on horizontal scrolling
here.
* evolution-shell-component.c
(impl_ShellComponent_async_copy_folder): Commented out this unused
function.
* evolution-storage.c (storage_gtk_to_corba_result): Removed an
unused variable here.
* importer/importer.c: Include gal/widets/e-gui-utils.h.
2001-02-14 Dan Winship <danw@ximian.com>
* Evolution-Storage.idl: add asyncCreateFolder and
asyncRemoveFolder interfaces. (Use Bonobo::Listener rather than
creating a new listener interface.)
* Evolution-LocalStorage.idl: Remove the
Evolution::LocalStorageOpsListener interface, which wasn't being
used.
* evolution-storage.c (impl_Storage_async_create_folder,
impl_Storage_async_remove_folder): implement by emitting signals
on the EvolutionStorage object. Convert from
EvolutionStorageResult to GNOME_Evolution_Storage_Result (blah!)
(class_init): Set up the new "create_folder" and "remove_folder"
signals.
* e-corba-storage.c (async_create_folder, async_remove_folder):
Implement, using the new Evolution::Storage IDL. Convert from
GNOME_Evolution_Storage_Result to EStorageResult (blah!)
* e-storage-set.c (e_storage_set_async_create_folder): Don't allow
a NULL description (since it doesn't allow a NULL anythign else).
* e-shell-folder-creation-dialog.c (dialog_clicked_cb): Pass ""
rather than NULL for the description.
2001-02-12 Kjartan Maraas <kmaraas@gnome.org>
* Makefile.am: xml-i18n-tools setup.
* GNOME_Evolution_Shell.oaf.in: Mark strings for translation.
2001-02-10 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view-menu.c: Moved the author list to the top of the
file.
(command_about_box): Display the `SUB_VERSION' as well.
2001-02-08 Ettore Perazzoli <ettore@ximian.com>
* e-shell-folder-creation-dialog.c (dialog_clicked_cb): Destroy
the dialog instead of using `gnome_dialog_close()'.
(dialog_clicked_cb): Likewise.
(dialog_close_cb): Removed.
(e_shell_show_folder_creation_dialog): Don't connect to the
"close" signal anymore.
* e-shell-folder-selection-dialog.c
(folder_creation_dialog_result_cb): New callback. Set the default
folder to be the newly created one.
(impl_clicked): Use it.
* e-shell-folder-creation-dialog.c: Add members `folder_path',
`result_callback' and `result_callback_data' to `struct
_DialogData'.
(e_shell_show_folder_creation_dialog): New args @result_callback
and @result_callback_data.
(async_create_cb): Notify the result through the specified
callback.
(dialog_clicked_cb): Likewise. Set the `folder_path' in the
DialogData so that we can pass it over when we get the async
notification of the result of the operation.
* e-shell-folder-creation-dialog.h: New type
`EShellFolderCreationDialogCallback'.
* e-storage-set-view.c (e_storage_set_view_set_current_folder):
Show the node too, using `e_tree_model_show_node()'.
2001-02-05 Ettore Perazzoli <ettore@ximian.com>
* e-setup.c (copy_default_stuff): s/first time you run/first time
you are running/.
2001-02-02 Ettore Perazzoli <ettore@ximian.com>
* e-component-registry.h: Don't #include <config.h>.
* e-corba-storage-registry.h: Likewise.
* e-corba-storage.h: Likewise.
* e-folder-type-registry.h: Likewise.
* e-folder.h: Likewise.
* e-local-folder.h: Likewise.
* e-local-storage.h: Likewise.
* e-shell-folder-title-bar.h: Likewise.
* e-shell-view.h: Likewise.
* e-shell.h: Likewise.
* e-shortcuts-view.h: Likewise.
* e-shortcuts.h: Likewise.
* e-splash.h: Likewise.
* e-storage-set-view.h: Likewise.
* e-storage-set.h: Likewise.
* e-storage.h: Likewise.
* evolution-local-storage.h: Likewise.
* evolution-session.h: Likewise.
* evolution-shell-client.h: Likewise.
* evolution-shell-component.h: Likewise.
* evolution-shell-view.h: Likewise.
* evolution-storage-listener.h: Likewise.
* evolution-storage.h: Likewise.
2001-02-02 Iain Holmes <iain@ximian.com>
* importer/evolution-importer-client.c:
(evolution_importer_client_new_from_id): Free the CORBA_Environment.
2001-01-30 Iain Holmes <iain@ximian.com>
* importer/importer.c: (start_import): Added a notice if there is no
importer that can handle the file.
(get_iid_for_filetype): Free the list of multiple items before returning.
(importer_timeout_fn): Removed notice.
(import_cb): Removed notice.
2001-01-30 Iain Holmes <iain@ximian.com>
* importer/importer.c: Added a nasty hack to change the druids Finish
button to be Import.
* importer/import.glade: Remove the FIXME warning.
2001-01-30 Kjartan Maraas <kmaraas@gnome.org>
* importer/importer.c: Fixed some typos.
2001-01-28 Ettore Perazzoli <ettore@ximian.com>
* e-shell-folder-creation-dialog.c (add_storage_set_view): Set the
shadow type to be `GTK_SHADOW_IN' in the EScrollFrame.
2001-01-27 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view.c (storage_set_view_box_button_release_event_cb):
Don't pop down the folder bar if the button release happens in the
e-paned's handle.
(storage_set_view_box_button_release_event_cb): Changed the return
value to be int. Stupid me.
2001-01-27 Jason Leach <jasonleach@usa.net>
* e-shortcuts-view.h: Fix #include to point to gal instead of
widgets/shortcut-bar/
* e-shortcuts.c: Here too.
* e-shortcuts-view-model.h: And lastly here.
* Makefile.am (evolution_LDADD): Don't link with the old
widgets/shortcut-bar/libshortcut-bar.la anymore, gal has the new
shortcut-bar.
2001-01-27 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c (get_pixbuf_for_folder): Don't scale if the
size is the same. `gdk_pixbuf_scale()' seems to be blurring the
image even if the scaling factor is 1.0.
2001-01-26 Ettore Perazzoli <ettore@ximian.com>
* e-corba-storage.c: Remove all instances of `__FUNCTION__'.
* e-folder-tree.c: Likewise.
* e-folder-type-registry.c: Likewise.
* e-shell-view.c: Likewise.
* e-shell-view-menu.c: Likewise.
2001-01-25 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view.c (e_shell_view_construct): Connect the
"updated_folder" with `gtk_signal_connect_while_alive()' so that
it gets disconnected when the shell view dies.
2001-01-24 Jason Leach <jasonleach@usa.net>
(Fix #1252: Need a File->Close way to close a view)
* e-shell-view-menu.c (command_close): New function, destroys the
current view.
* e-shell.c (view_destroy_cb): Make sure shell settings get saved
when the last view is destroyed.
2001-01-24 Kjartan Maraas <kmaraas@gnome.org>
* importer/GNOME_Evolution_Importer.idl: Fix missing ';'.
2001-01-23 Ettore Perazzoli <ettore@ximian.com>
* e-corba-storage.c (impl_StorageListener_update_folder): Don't
call `e_storage_updated_folder()' as it's supposed to happen
automatically now.
* e-storage.c (e_storage_updated_folder): Removed.
(folder_changed_cb): New callback for the "changed" signal on the
EFolders.
(e_storage_new_folder): Connect it.
* e-folder-tree.c: New member `data_to_path' in `EFolderTree'.
(e_folder_tree_new): Init here.
(e_folder_tree_destroy): Destroy it here.
(e_folder_tree_add): Add to the `data_to_path' hash. Make sure
we are not adding the same folder twice.
(remove_folder): Remove from the `data_to_path' hash.
(e_folder_tree_get_path_for_folder): New.
* e-shell-view.c (e_shell_view_construct): Don't connect to the
"folder_updated" signal of the local storage anymore.
(folder_updated_cb): Removed.
(updated_folder_cb): New.
(e_shell_view_construct): Connect it to the "updated_folder"
signal.
* e-local-storage.c: Remove `FOLDER_UPDATED' enum value and the
`signals' variable, as we don't want to define any custom signals
here anymore.
(bonobo_interface_update_folder_cb): No need to emit the
"folder_updated" signal here. The base class will take care of
this already.
(class_init): Don't install the "folder_updated" signal here.
* e-local-storage.h: Removed signal "folder_updated". It is not
necessary, as we already have an `updated_folder' in `EStorage',
which is the parent class of `ELocalStorage'.
2001-01-24 Iain Holmes <iain@ximian.com>
* importer/GNOME_Evolution_Importer.idl: Removed the busy exception.
2001-01-19 Iain Holmes <iain@ximian.com>
* importer/GNOME_Evolution_Importer.idl: Make the processItem oneway.
Make the Listener interface inherit from Bonobo::Unknown.
* importer/evolution-importer-client.[ch]: Remove all the crap to deal
with creating the Listener object.
* importer/evolution-importer-listener.[ch]: A new bonobo object to
implement the ImporterListener interface.
* importer/importer.c: Fix it up to use the new Listener object.
2001-01-18 Iain Holmes <iain@ximian.com>
* e-shortcuts-view.c (show_new_group_dialog): Don't make the dialog
modal.
2001-01-16 Iain Holmes <iain@ximian.com>
* importer/GNOME_Evolution_Importer.idl: Removed the ImporterFactory
interface and put the methods from it into the Importer interface.
* importer/evolution-importer-factory.[ch]: Removed.
* importer/evolution-importer.[ch]: Added the new methods.
Added inline documentation for all public functions.
* importer/evolution-importer-client.[ch]: Added new client support for
the new methods.
Added inline documentation for all public functions.
* importer/importer.c (create_plugin_menu): Changed the query to look for
IDL:GNOME/Evolution/Importer:1.0.
(start_import): Do all CORBA methods through the EvolutionImporterClient.
(get_iid_for_filetype): Change query to search for
IDL:GNOME/Evolution/Importer:1.0.
2001-01-19 Dan Winship <danw@ximian.com>
* evolution-storage.c (evolution_storage_folder_exists): New
function. Obvious.
2001-01-19 Jason Leach <jasonleach@usa.net>
(Bug #883: Shortcut bar does not update when a folders display
name changes)
* e-local-storage.c (class_init): Define a new "folder_updated"
signal here.
(bonobo_interface_update_folder_cb): Emit the new folder_updated
signal here.
* e-shell-view.c (e_shell_view_construct): Connect the
EShell::ELocalStorage folder_updated signal here. Also connect
the updated_folder signal coming from EShell::EStorageSet to the
new callback.
* e-shell-view.c (folder_updated_cb): Callback that actually
initiates the shell updating.
* e-shortcuts.c (e_shortcuts_update_shortcut_by_uri): New
function. Given a URI for a shortcut bar item, we'll update it.
* e-shortcuts.c (e_shortcuts_remove_shortcut_by_uri): New
function. Given a URI for a shortcut bar item, we'll remove it.
* e-shortcuts.c (removed_folder_cb): Connect this callback that
will remove a renamed vfolder from the shortcut bar. Temporary
fix to the problem of renaming vfolders and having the shortcut
bar think the old vfolder still exists.
(Bug #1168: Shortcut bar and icon size persistence)
* e-shell-view.c (save_shortcut_bar_icon_modes): New static
function, save the icon modes (for all shortcut bar groups, even
though we only have one group now).
(load_shortcut_bar_icon_modes): New static function, load the
saved shortcut bar group icon modes and apply them to our shortcut
bar.
2001-01-17 Federico Mena Quintero <federico@ximian.com>
* importer/evolution-importer.h: Use "typedef enum { ... } Blah;"
instead of "typedef enum _Blah Blah; enum _Blah { ... };" so that
gtk-doc can parse it. Sigh.
2001-01-17 Ettore Perazzoli <ettore@ximian.com>
* e-shell-folder-selection-dialog.c
(e_shell_folder_selection_dialog_construct): Set the shadow type
for the EScrollFrame. Also, make the EStorageSetView widget grab
the focus. For some reason it doesnt' seem to work, but I'll
blame ETree for now.
2001-01-17 Ettore Perazzoli <ettore@ximian.com>
* e-shell-view.c (update_for_current_uri): Display the folder name
before "Evolution" instead of after it. Also, display the
sub-version string if it was defined when configuring.
2001-01-17 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.c (table_drag_drop): Don't emit the
"dnd_action" signal here. Instead, do a `gtk_drag_get_data()' to
retrieve information about the drop.
(table_drag_data_received): New, implementation for
`ETable::table_drag_data_received'.
(class_init): Install it.
(table_drag_data_get): Use `unsigned int' instead of `guint' for
consistency.
(table_drag_motion): Same here. Also use `int' instead of `gint'.
(table_drag_drop): Likewise.
(treepath_compare): Likewise.
(marshal_NONE__ENUM_STRING_STRING_STRING): Removed.
(marshal_NONE__GDKDRAGACTION_STRING_STRING_STRING): New.
(class_init): Use it; update signal "dnd_action" so that it passes
a `GdkDragAction *' instead of .
* e-storage-set-view.h: Change signal "::dnd_action" so that it
provides a `GdkDragContext' instead of just a `GdkDragAction'.
2001-01-16 Michael Meeks <michael@helixcode.com>
* e-shell-view.c (e_shell_view_construct): set config
path on window.
2001-01-16 JP Rosevear <jpr@ximian.com>
* e-shell-folder-title-bar.c (e_shell_folder_title_bar_new): pop the
visual/cm after the construct
2001-01-15 JP Rosevear <jpr@ximian.com>
* e-shell-folder-title-bar.c (e_shell_folder_title_bar_new): push/pop
the color map
(e_shell_folder_title_bar_new): and the visual...
2001-01-15 Iain Holmes <iain@ximian.com>
* importer/importer.c (import_druid_cancel): Just destroy the wizard.
All other freeing code is moved into import_druid_destroy.
(show_import_wizard): Connect the destroy signal to import_druid_destroy.
(start_import): Connect to the destroy signal of the dialog and the
clicked as well.
(dialog_destroy_cb): Stop the import after the current item has finished.
(dialog_clicked_cb): Stop the import.
(import_cb): Only process the next item if the dialog hasn't been stopped.
Destroy the dialog if it hasn't been destroyed already.
* e-splash.c (e_splash_construct): Set the window title to Evolution.
2001-01-13 Jason Leach <jasonleach@usa.net>
(Fix bug #934: Add Right-click item to hide the shortcut bar)
* e-shortcuts-view.c (class_init): Create a new hide_requested
signal.
(hide_shortcut_bar_cb): New function that gets called from the
right click menu items, it emits the hide_requested signal.
* e-shell-view.c (setup_widgets): Connect the hide_requested from
the shortcut bar.
(hide_requested_cb): New function.
2001-01-13 Ettore Perazzoli <ettore@ximian.com>
* e-storage-set-view.h: New signal `dnd_action'.
* e-storage-set-view.c: Renamed `drag_types' to
`source_drag_types' and `num_drag_types' to
`num_source_drag_types'. New variables `destination_drag_types'
and `num_destination_drag_types'.
(e_storage_set_view_construct): Set the ETree as a drag
destination. Allow both GDK_ACTION_MOVE and GDK_ACTION_COPY.
* e-storage-set-view.c (table_drag_begin): Renamed from
`etable_drag_begin'.
(table_drag_data_get): Renamed from `etable_drag_data_get'.
Changed to be a method override instead of a signal handler.
(table_drag_motion): New; implementation for the
`ETable::table_drag_motion' method. Changed to be a method
override instead of a signal handler.
(table_drag_drop): New, implementation for `::table_drag_drop'.
(cursor_change): Renamed from `on_cursor_change'.
(e_storage_set_view_construct): Don't connect the signals here.
(class_init): Instead, override the methods here. Also, install
our override for `::table_drag_motion' and for
`::table_drag_drop'.
(right_click): Changed to be a method instead of a signal handler.
(cursor_change): Likewise.
2001-01-13 Miguel de Icaza <miguel@gnu.org>
* e-shell.c (e_shell_construct): Unref our copy, and then destroy.
* e-splash.c (e_splash_set_icon_highlight): Do not execute code if
we have been destroyed.
(e_splash_add_icon): ditto.
2001-01-12 Miguel de Icaza <miguel@gnu.org>
* e-splash.c (e_splash_construct): Ok, talked to Ettore. Going
back to TOPLEVEL non-POPUP.
(e_splash_construct): Remove nice toplevel window.
2001-01-12 Ettore Perazzoli <ettore@ximian.com>
* evolution-shell-component.c: Add member `copy_folder_fn' to
`EvolutionShellComponentPrivate'.
(init): Init to NULL.
(impl_ShellComponent_async_copy_folder): New function,
implementation for `::asyncCopyFolder'.
(evolution_shell_component_construct): New arg @copy_folder_fn.
Set the corresponding member in `EvolutionShellComponentPrivate'.
(evolution_shell_component_new): New arg @copy_folder_fn. Pass it
to `evolution_shell_component_construct'.
* evolution-shell-component.h: New type
`EvolutionShellComponentCopyFolderFn'.
2001-01-12 Ettore Perazzoli <ettore@helixcode.com>
* Evolution-ShellComponent.idl: Add method `::removeFolderAsync'.
2001-01-12 Ettore Perazzoli <ettore@ximian.com>
* evolution-shell-component.c (corba_class_init):
s/addFolderAsync/createFolderAsync/.
* evolution-shell-component-client.c
(evolution_shell_component_client_async_create_folder):
s/addFolderAsync/createFolderAsync/.
* Evolution-ShellComponent.idl: Rename `addFolder' into
`createFolder'.
2001-01-12 Dan Winship <danw@ximian.com>
* importer/.cvsignore: Create
2001-01-12 Miguel de Icaza <miguel@ximian.com>
* e-storage-set-view.c: Added translation strings.
* e-shell-view-menu.c (command_about_box): Update our name
(command_new_mail_message): Remove "window"
from the moniker path.
* e-splash.c (e_splash_construct): Make the spalsh screen a
toplevel instead of a popup.
2001-01-11 Dan Winship <danw@ximian.com>
* e-shell-view.c (show_existing_view): Remove the "Already have
view for..." message. People keep assuming it's an error.
2001-01-11 Iain Holmes <iain@ximian.com>
* importer/*: New directory containing the importer framework.
* e-shell-view-menu.c (file_verbs): Add the FileImporter verb.
2001-01-10 Miguel de Icaza <miguel@helixcode.com>
* e-shell-view-menu.c (command_goto_folder): Fix prototype
(command_new_view): ditto.
(command_new_mail_message): Implement command_new_mail_message.
verbs: Use BONOBO_UI_VERB instead of BONOBO_UI_UNSAFE_VERB
2001-01-04 Dan Winship <danw@helixcode.com>
* evolution-storage.c (evolution_storage_update_folder_by_uri):
New function to update a folder given its URI. Plus associated
changes to other functions to keep track of the path<->URI
mappings.
2000-12-28 Ettore Perazzoli <ettore@helixcode.com>
* evolution-shell-client.c (user_select_folder): Make sure the
`*uri_return' and `*physical_uri_return' are always initialized on
return, as that's what the caller expects.
2000-12-23 Jason Leach <jasonleach@usa.net>
* e-shell-view-menu.c (command_run_bugbuddy): Fix a crash when the
user tries to "Submit bug report" but doesn't have bug-buddy
installed. Bug #633.
2000-12-23 Jason Leach <jasonleach@usa.net>
* e-setup.c (copy_default_stuff): Make the "Evolution
installation" dialog resizable. Bug #742.
(check_evolution_directory): Here too.
2000-12-14 Iain Holmes <iain@helixcode.com>
* e-shell-folder-selection-dialog.c (dbl_click_cb): Modify to suit the
new double click callback signature. Destroy the dialog after the double
click as well.
2000-12-14 Ettore Perazzoli <ettore@helixcode.com>
* main.c (development_warning): Slightly updated the text for the
release.
2000-12-14 Ettore Perazzoli <ettore@helixcode.com>
* e-splash.c (ICON_Y): Update for the size of the new splash.
2000-12-12 Jeffrey Stedfast <fejj@helixcode.com>
* e-splash.c (button_press_event): Return TRUE as we have handled
the event.
2000-12-12 Dan Winship <danw@helixcode.com>
* e-shell-view.c (get_control_for_uri): Pass path+1 rather than
path to get_type_for_storage, to match the convention used by its
other callers.
2000-12-11 Jeffrey Stedfast <fejj@helixcode.com>
* e-splash.c (e_splash_construct): Connect a button-press-event
signal on the splash screen so users can click it to hide it.
(button_press_event): New callback to hide the splash screen.
2000-12-11 Dan Winship <danw@helixcode.com>
* e-shell-view.c (get_type_for_{folder,storage}): return NULL if
no {folder,storage} is found.
(get_control_for_uri): return NULL if no folder_type is found.
2000-12-08 Ettore Perazzoli <ettore@helixcode.com>
* e-shortcuts-view.c (e_shortcuts_view_construct): Ooops. We were
reffing a bogus pointer that was not assigned yet.
* e-corba-storage-registry.c (impl_StorageRegistry_addStorage):
Updated according to the new IDL.
* e-local-storage.c (construct): Pass `NULL' to
`e_storage_construct' as the @toplevel_node_type arg.
* evolution-shell-component-client.c
(evolution_shell_component_client_new_for_objref): New.
(evolution_shell_component_client_new): Refactored to use it.
* e-corba-storage.c (e_corba_storage_construct): New arg
@toplevel_node_type. Pass it to `e_storage_construct'.
(e_corba_storage_new): New arg @toplevel_node_type. Pass it to
`e_corba_storage_construct'.
* e-storage.c: New member `toplevel_node_uri_type' in
`EStoragePrivate'.
(init): Init to NULL.
(destroy): Unref.
(e_storage_construct): New arg @toplevel_node_type. Set the
private member value accordingly.
(e_storage_new): New arg @toplevel_node_type. Pass to
`e_storage_construct'.
(e_storage_get_toplevel_node_type): New.
* e-shell-view.c (get_physical_uri_for_evolution_uri): New arg
@shell_view.
(get_physical_uri_for_storage): Filled in. New arg @shell_view.
(get_physical_uri_for_folder): Filled in. New arg @shell_view.
* evolution-local-storage.c (evolution_local_storage_construct):
Pass `NULL' as the @toplevel_node_type arg to
`evolution_storage_construct'.
* evolution-storage.c: New member `toplevel_node_type' in
`EvolutionStoragePrivate'.
(destroy): Free.
(init): Init to NULL.
(evolution_storage_construct): New arg @toplevel_node_handler
to initialize the corresponding field in `->priv'.
(evolution_storage_new): New arg @toplevel_node_type. Pass
it to `evolution_storage_construct'.
(evolution_storage_register): Pass the @toplevel_node_type
arg to `::addStorage'.
* Evolution-Storage.idl: Add arg @toplevel_node_type to
`StorageRegistry::addStorage'.
* main.c (new_view_on_running_shell): Deal with an exception in
`::createNewView' gracefully.
* e-shell-view.c (switch_on_folder_tree_click): New.
(folder_selected_cb): Refactored to use it.
(storage_selected_cb): Use it.
2000-12-07 Michael Meeks <michael@helixcode.com>
* Makefile.am (oaf_DATA): update to GNOME_Evolution_Shell.oafinfo
* e-shell.h: upd.
2000-12-04 Ettore Perazzoli <ettore@helixcode.com>
* Evolution-StorageSetView.idl: Arg @uri renamed to @name in
`StorageSetViewListener::notifyStorageSelected'.
* evolution-storage-set-view.c
(storage_set_view_widget_storage_selected_cb): Renamed arg @uri to
@name.
* e-storage-set-view.c (on_cursor_change): Only emit the name of
the storage for the "storage_selected" signal [i.e. remove the
leading slash].
* e-shell-view.c (storage_selected_cb): New callback for the
"storage_selected" signal on the EStorageSetView used for the
folder tree.
(setup_storage_set_subwindow): Connect it.
* evolution-local-storage.c (evolution_local_storage_construct):
Pass NULL as the @toplevel_node_uri arg to
`evolution_storage_construct()'.
* evolution-storage.c: New member `toplevel_node_uri' in
`EvolutionStoragePrivate'.
(init): Init to NULL.
(destroy): Free.
(evolution_storage_construct): New arg @toplevel_node_uri. Set
the @toplevel_node_uri member in the private part to its value.
(evolution_storage_new): New arg @toplevel_node_uri. Pass it to
`evolution_storage_construct()'.
(evolution_storage_register): Pass the @toplevel_node_uri value to
the `::addStorage' CORBA method.
* e-corba-storage-registry.c (impl_StorageRegistry_addStorage):
New arg @toplevel_node_uri, to go with the IDL change.
* Evolution-Storage.idl (StorageRegistry::addStorage): New arg
@toplevel_node_uri.
* e-local-storage.c (construct): Pass NULL as the
@toplevel_node_uri arg to `e_storage_construct()'.
* e-corba-storage.c (e_corba_storage_construct): New arg
@toplevel_node_uri. Pass it to `e_storage_construct()'.
(e_corba_storage_new): New arg @toplevel_node_uri. Pass it to
`e_corba_storage_construct()'.
* e-storage.c: New member `toplevel_node_uri' in
`EStoragePrivate'.
(init): Init to NULL.
(destroy): Free.
(e_storage_construct): New arg @toplevel_node_uri. Set the
`toplevel_node_uri' member in the private part to its value.
(e_storage_new): New arg @toplevel_node_uri. Pass it to
`e_storage_construct()'.
(e_storage_get_toplevel_node_uri): New.
* e-corba-storage-registry.c (impl_StorageRegistry_addStorage):
Renamed from `impl_StorageRegistry_register_storage'.
(impl_StorageRegistry_removeStorageByName): Renamed from
`impl_StorageRegistry_unregister_storage'.
(corba_class_init): Updated accordingly.
2000-12-04 Ettore Perazzoli <ettore@helixcode.com>
* main.c (new_view_on_running_shell): Don't crash if the object
returned from `oaf_activate_from_id' is NIL and the exception
isn't set. Just handle this as a normal error condition.
2000-12-04 Michael Meeks <michael@helixcode.com>
* e-shell-view.c (get_control_for_uri): return NULL if we can't
create a view.
(setup_evolution_shell_view_interface): add precondition.
2000-12-04 Ettore Perazzoli <ettore@helixcode.com>
* e-shortcuts-view.c (e_shortcuts_view_construct): Ref the
shortcuts.
* main.c (new_view_on_running_shell): New.
(idle_cb): If the shell cannot be created, then call
`new_view_on_running_shell'.
* e-shell-view.c: New member `shell_view_interface' in
`EShellViewPrivate'.
(init): Init to NULL.
(setup_evolution_shell_view_interface): Set up.
(destroy): Unref.
* e-shell.c (impl_Shell_getComponentByType): Renamed from
`impl_Shell_get_component_for_type'.
(impl_Shell_selectUserFolder): Renamed from
`impl_Shell_user_select_folder'.
(impl_Shell_getLocalStorage): Renamed from
`impl_Shell_get_local_storage'.
(impl_Shell_createStorageSetView): Renamed from
`impl_Shell_create_storage_set_view'.
(corba_class_init): Updated accordingly.
(impl_Shell_createNewView): New, implementation for the
`createNewView' CORBA method.
(corba_class_init): Install it.
* Evolution-Shell.idl: New method `::createNewView'.
* e-shell.c (register_shell): New.
(e_shell_construct): Return value changed to `gboolean'. New arg
@iid. Construct the Bonobo object before displaying the splash,
then try to register it with the specified @iid. If registration
fails, return %FALSE. Otherwise, just do everything normally and
return %TRUE.
(e_shell_new): Pass the OAFIID to `e_shell_construct()'. If it
fails, unref the object and return NULL.
* evolution.oafinfo: New.
2000-11-27 JP Rosevear <jpr@helixcode.com>
* e-shell-view-menu.c (command_about_box): Add myself, anna, jesse
2000-11-15 Michael Meeks <michael@helixcode.com>
* e-shell.c (e_shell_component_maybe_crashed): de-register
a component's UI if it dies.
2000-11-25 Peter Williams <peterw@helixcode.com>
* Makefile.am (idldir): Install our IDL's into $(datadir)/idl.
2000-11-25 Federico Mena Quintero <federico@helixcode.com>
* e-setup.c (check_dir_recur): Plug leaks of the fullname and
fulldefaultname.
(check_evolution_directory): Plug leaks of defaultdir and newfiles
and the list's data; made the code have a single return point.
* e-shell.c (e_shell_restore_from_settings): Plug leak of prefix.
(corba_class_init): Plug leak; we were not assigning the
vepv->_base_epv.
* evolution-storage.c (corba_class_init): Likewise.
* evolution-local-storage.c (corba_class_init): Likewise.
2000-11-24 Federico Mena Quintero <federico@helixcode.com>
* evolution-shell-component.c
(impl_ShellComponent__get_supported_types): Plug leak; mark the
CORBA sequence so that it will be released.
2000-11-14 Michael Meeks <michael@helixcode.com>
* e-shell-view.c (unmerge_on_error): add
(e_shell_view_construct): hook up to system_exception on
ui_container.
2000-11-11 Matt Bissiri <bissiri@eecs.umich.edu>
* e-shell.c: (setup_components), (save_settings_for_component):
* evolution-storage.c: (evolution_storage_register_on_shell):
Update the remaining "IDL:Evolution*" to "IDL:GNOME/Evolution*"
to sync up with yesterday's IDL re-scoping.
2000-11-06 Michael Meeks <michael@helixcode.com>
* e-shell-view.c (unrealize): remove.
(e_shell_view_construct): ditto.
2000-11-09 Christopher James Lahey <clahey@helixcode.com>
* e-shell-view.c: Make the panes of the EPaned not shrinkable
beyond their minimum size.
2000-11-08 Matt Bissiri <bissiri@eecs.umich.edu>
* e-shell-folder-selection-dialog.c: Fix typo in a comment.
2000-11-06 Dan Winship <danw@helixcode.com>
* e-storage-set-view.c (insert_folders): Pass full_name, not
folder_name to callback.
2000-11-06 Ettore Perazzoli <ettore@helixcode.com>
* evolution-shell-view.c (impl_ShellView_change_current_view):
Constified @uri.
(impl_ShellView_set_title): Constified @title.
2000-11-06 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c: New member `crash_type_names' in `EShellPrivate'.
(init): Init to NULL.
(destroy): Free.
(e_shell_component_maybe_crashed): New.
2000-11-06 Ettore Perazzoli <ettore@helixcode.com>
* evolution-shell-component.c (impl_ShellComponent_create_view):
`CORBA_Object_duplicate()' the return value.
2000-11-06 Kjartan Maraas <kmaraas@gnome.org>
* e-setup.c: Added #include <config.h>
2000-11-03 Ettore Perazzoli <ettore@helixcode.com>
* main.c: New local static variables `evolution_directory',
`no_splash'.
(main): Removed local variable `evolution_directory'. Add a
`--no-splash' command-line option for setting the value of
`no_splash'.
(idle_cb): Use the static `evolution_directory'. Make the newly
created shell show the splash or not according to the value of
`no_splash'.
* e-shell.c (setup_components): Deal with a NULL @splash
parameter.
(e_shell_construct): New arg `show_splash'. Don't create a splash
screen if FALSE; instead, pass NULL to `setup_components()' as the
@splash arg.
(e_shell_new): New arg `show_splash'. Pass it to
`e_shell_construct()'.
2000-11-03 Dan Winship <danw@helixcode.com>
* evolution-storage-listener.c (class_init): Fix the name of the
signal passed to gtk_signal_new so that this actually works.
2000-11-01 Dan Winship <danw@helixcode.com>
* evolution-storage.c (evolution_storage_new_folder): Make this
take "highlighted" as well.
* e-local-storage.c (new_folder):
* e-corba-storage.c (impl_StorageListener_new_folder): set
highlighted on the new folder.
* e-storage-set-view.c (updated_folder_cb): Remove an unused
variable.
2000-10-26 Iain Holmes <iain@helixcode.com>
* Evolution-ShellView.idl: Added a change_current_view method and
a set_title.
* evolution-shell-view.c (class_init): Added signals for the above methods.
(impl_ShellView_change_current_view), (impl_ShellView_set_title): Implementations
for above methods.
(corba_class_init): Connect the implemenations.
* e-shell-view.c (shell_view_interface_change_current_view): Change
the display to the new uri.
(shell_view_interface_set_title): Set the window title.
(setup_evolution_shell_view_interface): Connect the signals to the above
functions.
2000-11-01 Dan Winship <danw@helixcode.com>
* Evolution-Storage.idl: Add "highligted" field to Folder. Add
update_folder method to StorageListener to change display_name and
highlight status.
* e-folder.c: Add "highlighted" to EFolder to match the
Evolution::Folder type.
(e_folder_get_highlighted, e_folder_set_highlighted): Added
* evolution-storage-listener.c
(impl_Evolution_StorageListener_update_folder, etc):
* e-storage.c (e_storage_updated_folder, etc):
* e-corba-storage.c (impl_StorageListener_update_folder, etc):
Implement update_folder.
* e-storage-set.c (storage_updated_folder_cb, etc): Re-emit
updated_folder signals received from EStorage.
* e-storage-set-view.c (various): Add another model column to the
ETable and set it up as a bold_column based on
e_folder_get_highligted.
(updated_folder_cb, etc): Listen to EStorageSet update_folder
signal and emit ETree node_changed signals.
* evolution-storage.c (evolution_storage_update_folder): Client
function to update a folder's display_name and highlighted status.
* Evolution-LocalStorage.idl:
* evolution-local-storage.c:
* e-local-storage.c: Change set_display_name to update_folder to
match Evolution::StorageListener
2000-10-25 <jpr@helixcode.com>
* e-shortcuts-view-model.c (load_group_into_model): Set folder to NULL to
kill warning
2000-10-23 Dan Winship <danw@helixcode.com>
* Makefile.am (INCLUDES): Update EVOLUTION_LOCALEDIR
2000-10-20 Michael Meeks <michael@helixcode.com>
* evolution-shell-component-client.c
(evolution_shell_component_client_populate_folder_context_menu),
(evolution_shell_component_client_create_view): update to new UI handler
* e-shell-view-menu.c (command_create_folder): ditto.
* e-storage-set-view.c (popup_folder_menu): ditto.
* evolution-shell-component-client.h: kill ui-compat include.
2000-10-19 Iain Holmes <iain@helixcode.com>
*e-shell-view.c (e_shell_view_save_settings): If there is no view
save the default uri instead.
(socket_destroy_cb): When a view crashes, change the view to the
default one.
2000-10-18 Michael Meeks <michael@helixcode.com>
* evolution-shell-component.c (impl_ShellComponent_populate_folder_context_menu):
update for new UI handler.
2000-10-18 Iain Holmes <iain@helixcode.com>
* e-shell-view.c (start_progress_bar): If the widget is not realized
don't do anything, to prevent BadGC's at shut down.
(stop_progress_bar): Don't draw anything if the widget is not realized.
Same reason.
* e-shell-folder-selection-dialog.c (dbl_click_cb): Emit the
folder-selected signal.
(e_shell_folder_selection_dialog_construct): Connect to the e-table's
double-click signal.
2000-10-17 Iain Holmes <iain@helixcode.com>
* e-shell.c (view_deleted_cb): Save the settings before the
view is destroyed.
(e_shell_quit): Don't save the settings when there are no views.
2000-10-16 Iain Holmes <iain@helixcode.com>
* e-setup.c (check_evolution_directory): Better dialog.
* e-splash.c (icon_free): Don't unref the canvas item.
(e_splash_construct): Add a frame round the splash screen.
2000-10-16 Dan Winship <danw@helixcode.com>
* evolution-storage-set-view-factory.c
(evolution_storage_set_view_factory_new_view): Add a typecast.
* e-storage-set-view.c (popup_folder_menu): Move variable
declarations into the #if 0 to kill warnings.
(populate_folder_context_menu_with_common_items,
folder_context_menu_activate_cb): Move these into #if 0 too.
* e-shell.c: Add prototype.
* e-shell-view.c (storage_set_view_box_map_cb):
* e-shell-folder-title-bar.c (e_shell_folder_title_bar_construct):
Remove unused variables.
* e-setup.c: Fix warning caused by e-util -> gal migration.
2000-10-11 Iain Holmes <iain@helixcode.com>
* e-setup.c (check_evolution_directory): Check if there are any
files in default_user that are not in ~/evolution and if so
copy them over.
(check_dir_recur): Recursive function to check the directory.
* e-shell-view-menu.c: Look Maw! I'm an Evolution hacker too.
* e-shell-view.c: Don't quit on when a view is destroyed.
* e-shell.c: Save the settings for the remaining views whenever
a view is destroyed.
2000-10-15 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (setup_storage_set_subwindow): Use an
EScrollFrame instead of a GtkScrolledWindow.
2000-10-14 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c (e_shell_construct): Display a splash screen.
(setup_components): New arg @splash, pointer to an ESplash.
Display the icons of the components in the splash and highlight
them as the components are activated.
* e-splash.c: New.
* e-splash.h: New.
2000-10-13 Anna Marie Dirks <anna@helixcode.com>
* e-shell-folder-creation-dialog.glade: Added focus to the
folder-name text entry.
2000-10-11 Christopher James Lahey <clahey@helixcode.com>
* e-storage-set-view.c: Fixed the spec on this.
2000-10-11 Christopher James Lahey <clahey@helixcode.com>
* e-storage-set-view.c: Changed this to use the built in cells.
2000-10-11 Christopher James Lahey <clahey@helixcode.com>
* e-storage-set-view.c: Adapted this for the new ETable system.
2000-10-09 Michael Meeks <michael@helixcode.com>
* e-shell-view-menu.c: Change paths in such a way as to require
HEAD bonobo.
(command_toggle_folder_bar, command_toggle_shortcut_bar): only
respond to state changes.
2000-10-07 Matt Wilson <msw@redhat.com>
* e-shell-view.c (init): initialize priv->sockets to NULL, fixes
startup crash on non-ia32 platforms
2000-10-06 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c: New member `sockets.
(init): Init to NULL.
(destroy): Free. Also, disconnect the "destroy" signal from them
before the controls get destroyed.
(find_socket): New function. [Thanks Dan.]
(socket_destroy_cb): New callback for the destruction of a socket.
(get_control_for_uri): Get the socket through `find_socket()' and
connect the "destroy" signal to `socket_destroy_cb'.
2000-10-06 Chris Toshok <toshok@helixcode.com>
* e-storage-set-view.c (insert_storages): call
_set_compare_function after inserting the storage.
2000-10-06 Michael Meeks <michael@helixcode.com>
* e-shell-view.c (e_shell_view_display_uri): add a freeze / thaw
pair to reduce flicker on switching controls.
2000-10-05 Michael Meeks <michael@helixcode.com>
* e-shell-view-menu.c (command_xml_dump): fix.
2000-10-05 Chris Toshok <toshok@helixcode.com>
* e-shell-folder-creation-dialog.c: #include <gal/widgets/e-gui-utils.h>
* e-shell-folder-selection-dialog.c: same.
2000-10-05 Chris Toshok <toshok@helixcode.com>
* e-shell-folder-selection-dialog.c: add #include for
libgnomeui/gnome-messagebox.h
2000-10-05 Michael Meeks <michael@helixcode.com>
* e-shell-view-menu.c (shortcut_bar_mode_changed_cb): upd.
(folder_bar_mode_changed_cb): upd.
(command_xml_dump): clobber.
(e_shell_view_menu_setup): upd.
* e-shell-view.c (shell_view_interface_set_message_cb): upd.
(shell_view_interface_unset_message_cb): upd.
(e_shell_view_construct): upd.
(get_control_for_uri): upd.
(e_shell_view_get_bonobo_ui_component): upd.
2000-10-04 Michael Meeks <michael@helixcode.com>
* e-shell-view.c (setup_progress_bar): remove evil usize set.
2000-10-03 Matt Bissiri <bissiri@eecs.umich.edu>
* e-shell-view-menu.c (e_shell_view_menu_setup): Use
`bonobo_ui_component_add_verb_list' instead of
`bonobo_ui_component_add_verb_list_with_data' for help_verbs,
so that `command_help' gets an html filename as user_data,
instead of a ptr to EShellView.
(menu_do_misc): Move DumpXML from help_verbs to here, because
`command_xml_dump' needs to get EShellView as user_data.
2000-10-02 Ettore Perazzoli <ettore@helixcode.com>
* e-shortcuts-view.c (show_new_group_dialog): Destroy the dialog
if the user has clicked on "OK" or "Cancel".
2000-10-02 Chris Toshok <toshok@helixcode.com>
* e-storage-set-view.c (e_storage_set_view_get_current_folder): if
we're not displaying folders, the current folder is NULL.
(class_init): fix typo.
* Makefile.am (libeshell_a_SOURCES):
evolution-storage-set-view-listener.[ch] should be here, not
evolution_SOURCES.
2000-10-02 Chris Toshok <toshok@helixcode.com>
* evolution-storage-set-view.c: add storage_selected behavior -
loop over the listeners calling _storage_selected.
* Evolution-StorageSetView.idl: add storage_selected to the
Listener interface.
* e-storage-set-view.c add storage_selected signal.
(on_cursor_change): if the depth is less than 2, emit
"storage_selected", otherwise emit "folder_selected".
* e-storage-set-view.h: add storage_selected signal.
* evolution-storage-set-view-listener.h: add storage_selected
signal.
* evolution-storage-set-view-listener.c: add storage_selected
signal.
2000-10-02 Ettore Perazzoli <ettore@helixcode.com>
* evolution-storage-set-view-listener.c: New.
* evolution-storage-set-view-listener.h: New.
2000-10-02 Chris Toshok <toshok@helixcode.com>
* evolution-storage-set-view.c (impl_StorageSetView_add_listener): fix typo.
(impl_StorageSetView_remove_listener): same.
(impl_StorageSetView__get_show_folders): implementation of getter for show_folders.
(impl_StorageSetView__set_show_folders): implementation of setter for show_folders.
(corba_class_init): install _set_show_folders and _get_show_folders.
* Evolution-StorageSetView.idl: add show_folders attribute to
StorageSetView.
* e-storage-set-view.h: add prototypes for
e_storage_set_view_{get,set}_show_folders.
* e-storage-set-view.c (insert_storages): split this code out from
e_storage_set_view_construct so we can call it when "show_folders"
has been changed.
(e_storage_set_view_construct): remove the code to insert
storages.
(e_storage_set_view_set_show_folders): new function. tears down
existing tree and node/path hashtable and calls insert_storages.
(e_storage_set_view_get_show_folders): new function, retrieves
current show_folders state.
2000-10-02 Chris Toshok <toshok@helixcode.com>
* evolution-storage-set-view-factory.c
(evolution_storage_set_view_factory_new_view): pass
storage_set_view_interface as second argument to
bonobo_object_add_interface, and call gtk_widget_show on the
storage_set_view widget.
2000-10-03 Michael Meeks <michael@helixcode.com>
* e-shell-view.c (setup_bonobo_ui_handler): kill.
* e-shell-view-menu.c (e_shell_view_menu_setup): strip
out the XML UI merge; move it to
* e-shell-view.c (e_shell_view_construct): here, +
freeze / thaw pair.
* e-shell-view.c (setup_progress_bar): impl.
(setup_widgets): hook in.
(progress_bar_timeout_cb): fix.
(start_progress_bar): fix.
(stop_progress_bar): fix.
(e_shell_view_construct): setup ui handler first.
2000-09-22 Michael Meeks <michael@helixcode.com>
* e-shell-view-menu.c (e_shell_view_menu_setup): upd.
2000-10-02 Chris Toshok <toshok@helixcode.com>
* e-storage-set-view.c (new_folder_cb): set the new node's compare function.
(insert_folders): same.
(new_storage_cb): remove uunecessary cast.
2000-10-02 Chris Toshok <toshok@helixcode.com>
* e-storage-set-view.c (new_storage_cb): track e-tree sort api change.
(treepath_compare): same.
(new_folder_cb): same.
2000-10-02 Chris Toshok <toshok@helixcode.com>
* e-storage-set-view.c (e_storage_set_view_construct): pass NULL
for the open/closed pixbuf of the tree renderer. we'll let it
supply the default.
(destroy): remove the expanded/unexpanded pixbuf references.
(new_storage_cb): use e_tree_model_node_insert_id so we can (soon)
save expanded/collapsed state.
(new_folder_cb): same.
(insert_folders): same.
(e_storage_set_view_construct): same.
2000-10-02 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c (impl_Shell_create_storage_set_view): New,
implementation for `::create_storage_set_view'.
(corba_class_init): Install.
* evolution-storage-set-view-factory.c: New.
* evolution-storage-set-view-factory.h: New.
* evolution-storage-set-view.c: New.
* evolution-storage-set-view.h: New.
* Evolution-Shell.idl: New method
`Shell::create_storage_set_view'.
* Evolution.idl: #include <Evolution-StorageSetView.idl>.
* Evolution-StorageSetView.idl: New.
2000-10-02 Ettore Perazzoli <ettore@helixcode.com>
* evolution-storage.c (find_listener_in_list): New helper
function.
(impl_Storage_remove_listener): New, implementation for
`Storage::remove_listener'.
(remove_listener): Helper function for
`impl_Storage_remove_listener'.
(evolution_storage_get_epv): Install the implementation for
`::remove_listener'.
(add_listener): Return a boolean indicating success or failure.
Reject multiple additions of the same listener.
(impl_Storage_add_listener): Updated accordingly: raise an
exception if `add_listener' fails.
* Evolution-Storage.idl: Added `Storage::remove_listener'. Added
exception `AlreadyListening' for `::add_listener'.
2000-09-29 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (popup_storage_set_view_button_clicked): Renamed
from `popup_storage_set_view_close_button_clicked'.
(storage_set_view_box_map_cb): Updated accordingly. Connect to
"button_clicked" instead of "close_button_clicked".
(disconnect_popup_signals): Updated accordingly.
(e_shell_view_set_folder_bar_mode): Update the button mode of the
title bar according to the folder bar mode.
2000-09-28 Dan Winship <danw@helixcode.com>
* e-corba-storage.c (impl_StorageListener_new_folder): Don't print
"Folder registered successfully" if it didn't. (Duh. :)
2000-09-28 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c: New constant `DEFAULT_URI'.
(e_shell_view_load_settings): If the `DisplayedURI' from
`gnome_config' cannot be displayed, display the `DEFAULT_URI'.
2000-09-26 Ettore Perazzoli <ettore@helixcode.com>
* e-shortcuts.c (e_shortcuts_get_group_title): Cast the data
pointer, not the node pointer.
(e_shortcuts_add_group): If @group_num is -1, emit the effective
group number with the "new_group" signal instead of -1, which is
going to confuse the signal handler.
(e_shortcuts_add_shortcut): Likewise with the shortcut.
* e-shortcuts-view-model.c (shortcuts_new_group_cb): We are @data,
not @shortcuts.
(class_init): Install the `::destroy' handler.
* e-shortcuts-view.c (e_shortcuts_view_construct): Set
`priv->shortcuts'.
(remove_shortcut_cb): Don't remove the item both on the data and
the model.
(toggle_small_icons_cb): Removed some crufty checks.
(toggle_large_icons_cb): Likewise.
(show_new_group_dialog): New, implementation for the "Create new
shortcut group" dialog.
(destroy_group_cb): Callback for the "Destroy this group" item.
(create_new_group): Callback for the "Create new group" item.
2000-09-25 Ettore Perazzoli <ettore@helixcode.com>
* e-shortcuts-view.c (item_selected): Renamed from
`selected_item'.
(class_init): Updated accordingly.
(impl_shortcut_dropped): New function, implementation for
`EShortcutBar::shortcut_dropped'.
(impl_shortcut_dragged): New function, implementation for
`EShortcutBar::shortcut_dragged'.
(e_shortcuts_view_construct): Update to use EShortcutsViewModel.
(class_init): Install them.
* e-shortcuts.c (e_shortcuts_get_group_title): New.
* e-shortcuts-view-model.c: New.
* e-shortcuts-view-model.h: New.
2000-09-24 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c (setup_local_storage): Don't unref the local storage.
2000-09-22 Michael Meeks <michael@helixcode.com>
* e-shell-view-menu.c (e_shell_view_menu_setup): upd.
2000-09-21 Federico Mena Quintero <federico@helixcode.com>
* e-shell-view-menu.c: Fix mis-spelling of "calendar".
2000-09-21 Michael Meeks <michael@helixcode.com>
* e-shell-view.c (show_existing_view): upd.
* Evolution-ShellComponent.idl: upd.
* evolution-shell-component.c (impl_ShellComponent_populate_folder_context_menu):
upd.
2000-09-18 Michael Meeks <michael@helixcode.com>
* e-shell-view-menu.c (command_xml_dump): add xml dump option.
2000-09-18 Christopher James Lahey <clahey@helixcode.com>
* Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and
$(EXTRA_GNOME_LIBS). Removed unneeded libraries.
* e-component-registry.c, e-corba-storage-registry.c,
e-corba-storage.c, e-folder-type-registry.c, e-folder.c,
e-local-folder.c, e-local-storage.c,
e-shell-folder-creation-dialog.c,
e-shell-folder-selection-dialog.c, e-shell-folder-title-bar.c,
e-shell-view.c, e-shell.c, e-shortcuts-view.c, e-shortcuts.c,
e-storage-set-view.c, e-storage-set-view.h, e-storage-set.c,
e-storage.c, evolution-local-storage.c, evolution-session.c,
evolution-shell-client.c, evolution-shell-component-client.c,
evolution-shell-component.c, evolution-shell-view.c,
evolution-storage-listener.c, evolution-storage.c, main.c: Fixed
the #include lines to deal properly with gal.
2000-09-16 Michael Meeks <michael@helixcode.com>
* e-shell-view-menu.c (e_shell_view_menu_setup): use datadir.
2000-09-16 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.h: #include "bonobo-win.h", not "bonobo-app.h".
2000-09-15 Dan Winship <danw@helixcode.com>
* e-storage.c (get_path_for_physical_uri_foreach): foreach_data
should be set to the caller-supplied data, not the tree item data.
2000-09-14 Iain Holmes <iain@helixcode.com>
* e-shell-folder-title-bar.c (e_shell_folder_title_bar_construct):
Remove the *kludge* so that the button width is set properly.
Fixes bug #XXXX
2000-09-14 Michael Meeks <michael@helixcode.com>
* e-shell-view-menu.c: Remove sillies in toggle paths.
2000-09-14 Michael Meeks <michael@helixcode.com>
* e-shell-view.c: move fn to bonobo.
2000-09-14 Christopher James Lahey <clahey@helixcode.com>
* Makefile.am: Added $(GNOME_PRINT_LIBS) to evolution_LDADD.
2000-09-14 Michael Meeks <michael@helixcode.com>
* e-shell-view.c (e_shell_view_construct): prune cruft.
(shell_view_interface_unset_message_cb),
(shell_view_interface_set_message_cb): impl.
2000-09-14 Michael Meeks <michael@helixcode.com>
* e-shell-view-menu.c (e_shell_view_menu_setup): re-order to suit and
add freeze / thaw, update paths to toggles, remove warnings
2000-09-07 Michael Meeks <michael@helixcode.com>
* e-shell-view-menu.c: Re-hash pretty much the whole file
* ui.xml: Add.
* e-shell-view.c (e_shell_view_construct): connect unrealize & delete_event
to theit signals on the window (class_init): remove widget_class bits.
2000-09-06 Michael Meeks <michael@helixcode.com>
* e-shell.c (view_destroy_cb, destroy, e_shell_new_view, e_shell_quit):
update to track object type change.
* e-shell.c (e_shell_restore_from_settings): ditto.
* main.c (idle_cb): ditto.
* e-shell-view.c (e_shell_view_new, e_shell_view_construct, setup_widgets):
updated for BonoboApp.
(progress_bar_timeout_cb, start_progress_bar, stop_progress_bar),
(shell_view_interface_set_message_cb, shell_view_interface_unset_message_cb):
emasculated for now.
* e-storage-set-view.c (popup_folder_menu): disable popup menu for now.
2000-09-13 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (popdown_transient_folder_bar): New.
(storage_set_view_box_button_release_event_cb): Rewritten to use
it.
(folder_selected_cb): Pop down the transient folder bar if the
folder bar mode is `TRANSIENT'.
2000-09-12 Ettore Perazzoli <ettore@helixcode.com>
* ($(IDL_GENERATED)): Stupid `orbit-idl' wants a space after the
`-I'.
2000-09-12 Lauris Kaplinski <lauris@helixcode.com>
* e-shell-view.c (update_folder_title_bar): Translate UTF-8
2000-09-12 Ettore Perazzoli <ettore@helixcode.com>
* Makefile.am: Remove the `ui.xml' stuff.
2000-09-11 Dan Winship <danw@helixcode.com>
* main.c (main): Initialize libunicode
2000-09-11 Christopher James Lahey <clahey@helixcode.com>
* e-local-storage.c: Fixed some warnings.
2000-09-11 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-folder-selection-dialog.c (set_default_folder): Work on
the assumption that @default_uri is not NULL.
(e_shell_folder_selection_dialog_construct): Only call if the
@default_uri is not NULL.
2000-09-11 Ettore Perazzoli <ettore@helixcode.com>
* e-local-storage.c (new_folder): Removed debugging message.
2000-09-11 Ettore Perazzoli <ettore@helixcode.com>
* evolution-storage.c (evolution_storage_new_folder): If
description is NULL, use the empty string instead.
* e-local-storage.c (new_folder): New utility function to add a
new folder by keeping both the Bonobo interface and the EStorage
up-to-date.
(load_folders): Use it here instead of just
`e_storage_new_folder()'.
(component_async_create_folder_callback): Likewise.
* e-shell-view.c (update_for_current_uri): Prevent an
EStorageSetView warning if the path is NULL.
* evolution-storage.c (impl_Storage_add_listener): New,
implementation for `Evolution::Storage::add_listener'.
(evolution_storage_get_epv): Install it.
* evolution-storage-listener.c
(evolution_storage_listener_corba_objref): New.
(create_servant): Create the servant with `g_new0()' instead of
`g_new()'.
2000-09-11 Ettore Perazzoli <ettore@helixcode.com>
* evolution-storage-listener.c
(evolution_storage_listener_construct): Unset the `GTK_FLOATING'
flag as `EvolutionStorageListener' is self-owned.
2000-09-11 Ettore Perazzoli <ettore@helixcode.com>
* e-storage.c (impl_list_folders): Removed.
(impl_get_subfolder_paths): New static function, implementation
for `::get_subfolder_paths'.
(class_init): Install it.
(e_storage_get_subfolder_paths): New.
* e-storage.h: `list_folders' virtual method removed. New virtual
method `list_subfolder_paths'.
* e-storage-set-view.c (etree_icon_at): If the folder is not
found, return NULL.
* e-local-storage.c (bonobo_interface_set_display_name_cb): New
function, callback for the `set_display_name' signal on the
EvolutionLocalStorage.
(construct): Connect it.
* e-storage-set-view.c (folder_changed_cb): New callback for the
"changed" signal emitted by the EFolders. It makes the model emit
the "changed" signal for the appropriate row.
(insert_folders): Connect it.
2000-09-09 Ettore Perazzoli <ettore@helixcode.com>
* e-storage-set-view.c (etree_value_at): Return the name of the
folder or the storage instead of just returning the last segment
of the path.
* e-storage-set.c (e_storage_set_get_folder): If the storage is
not found, just return NULL to avoid a g_warning.
2000-09-09 Christopher James Lahey <clahey@helixcode.com>
* e-shell-view.c: Fixed some warnings.
2000-09-09 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (update_for_current_uri): Make sure `folder_name'
is always dynamically allocated, as we `g_free()' it.
2000-09-08 Lauris Kaplinski <lauris@helixcode.com>
* e-shell-view.c (update_for_current_uri): Translate UTF-8 string
2000-09-08 Ettore Perazzoli <ettore@helixcode.com>
* evolution-storage.c (list_through_listener_foreach): Don't crash
on nodes with no data. [The root node has none indeed.]
2000-09-08 Ettore Perazzoli <ettore@helixcode.com>
* e-folder-tree.c (e_folder_tree_get_folder): Return NULL if there
is no folder with that @path, instead of segfaulting.
2000-09-08 Ettore Perazzoli <ettore@helixcode.com>
* evolution-storage.c: New member `folder_tree' in
`EvolutionStoragePrivate'.
(init): Initialize it.
(destroy): Destroy it.
(list_through_listener): New.
(add_listener): Use it to list all the current folders through the
listener.
(evolution_storage_new_folder): Add the thingie to the
`folder_tree'.
(evolution_storage_removed_folder): Remove the thingie from the
`folder_tree'.
2000-09-08 Ettore Perazzoli <ettore@helixcode.com>
* e-storage.c: Replaced the `path_to_folder' GHashTable with an
EFolderTree named `folder_tree'.
(init): Updated accordingly.
(destroy): Updated accordingly.
(free_private): Removed.
(remove_folder): Removed.
(folder_new): Removed.
(folder_remove_subfolder): Removed.
(folder_add_subfolder): Removed.
(folder_destroy): Removed.
(get_parent_path): Removed.
(impl_list_folders): Reimplemented by using the `EFolderTree'
methods.
(e_storage_construct): Don't create the root folder here.
(get_path_for_physical_uri_foreach): Updated to be an
`EFolderTreeForeachFunc'.
(e_storage_get_path_for_physical_uri): Likewise, updated to use
`e_folder_tree_foreach()'.
(e_storage_new_folder): Updated to use the EFolderTree.
(e_storage_removed_folder): Likewise.
(folder_destroy_notify): New function, for the destroy
notification of `EFolder'.
* evolution-storage-listener.c: Change the `servant' member in
`EvolutionStorageListenerPrivate' into an
`EvolutionStorageListenerServant'.
* e-folder-tree.c: New.
* e-folder-tree.h: New.
2000-09-08 Ettore Perazzoli <ettore@helixcode.com>
* evolution-storage-listener.c (create_servant): Return an
`EvolutionStorageListenerServant' instead of a
`POA_Evolution_StorageListener'.
(evolution_storage_listener_new): Add a cast accordingly.
* evolution-storage.c (corba_class_init): Remove `NO_WARNINGS'
madness.
2000-09-08 Christopher James Lahey <clahey@helixcode.com>
* e-storage-set-view.c: Added base ETableModel functions.
* evolution-storage-listener.c, evolution-storage.c: Fixed some
warnings.
2000-09-08 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c (set_owner_on_components): New.
(e_shell_construct): Call it after setting up the local storage.
* e-component-registry.c (register_component): Don't set the owner
here.
* evolution-shell-client.c
(evolution_shell_client_get_local_storage): New.
2000-09-08 Ettore Perazzoli <ettore@helixcode.com>
* evolution-shell-view.c (destroy): Chain to the parent's
destroy method.
* evolution-shell-component.c (destroy): Chain to the parent's
destroy method.
* evolution-storage.c: `corba_storage_listener' in
`EvolutionStoragePrivate' replaced with a list of listeners,
`corba_storage_listeners'.
(init): Init to NULL.
(add_listener): New utility function.
(destroy): Destroy all the listeners.
(evolution_storage_new_folder): Notify all the listeners.
(evolution_storage_removed_folder): Likewise.
* e-local-storage.c: New member `bonobo_interface' in
`ELocalStoragePrivate'.
(init): Init to NULL.
(e_local_storage_get_corba_interface): New.
* e-shell.c: New member `local_storage' in `EShellPrivate'.
(init): Init to NULL.
(setup_local_storage): Make it point to the newly created local
storage.
(destroy): Unref if not NULL.
(impl_Shell_get_local_storage): New, implementation for
`Evolution::Shell::get_local_storage'.
(corba_class_init): Set it up.
* evolution-local-storage-client.c: New.
* evolution-local-storage-client.h: New.
* evolution-local-storage.c: New.
* evolution-local-storage.h: New.
* evolution-storage-listener.c: New.
* evolution-storage-listener.h: New.
* Evolution-Storage.idl: New method `Storage::add_listener'.
* Evolution-Shell.idl: New method `Shell::get_local_storage'.
* Evolution-LocalStorage.idl: New.
2000-09-02 Lauris Kaplinski <lauris@helixcode.com>
* e-shell-folder-creation-dialog.c: Use e_utf8 wrappers
2000-09-01 Chris Toshok <toshok@helixcode.com>
* e-storage-set-view.c (removed_folder_cb): free node_data.
(removed_storage_cb): same.
(new_storage_cb): don't free the path we put in the node's
node_data.
(e_storage_set_view_set_current_folder): remove calls to
set_cursor_row (-1), and clean up a little bit.
2000-09-01 Christopher James Lahey <clahey@helixcode.com>
* e-local-storage.c: Strdup path when setting the callback data.
* evolution-storage.c: Removed an unused variable.
2000-08-31 Chris Toshok <toshok@helixcode.com>
* e-shell-view.c (init): initialize delayed_selection = NULL;
2000-09-01 Ettore Perazzoli <ettore@helixcode.com>
* evolution-storage.c (evolution_storage_new_folder): Handle @path
as the full path.
* e-storage.c (e_storage_new_folder): Consider @path to be the
full path, not the parent path.
* e-local-storage.c (load_folders): Updated accordingly.
* Evolution-Storage.idl: Member `name' of `struct Folder' renamed
to `display_name'.
2000-08-31 Chris Toshok <toshok@helixcode.com>
* e-shell-view.c: add delayed_selection to _EShellViewPrivate.
(new_folder_cb): new function. check if the path is our
delayed_selection and if so, select it.
(folder_selected_cb): if the user selects something using a UI
gesture, clear out a pending delayed selection.
(e_shell_view_display_uri): if the uri isn't available, save it in
the delayed_selection field, and set up the new_folder signal.
2000-08-29 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (shell_view_interface_set_message_cb): If the
message contains a newline, only display the part until the
newline, excluding the newline. Otherwise the status bar resizes
nastily.
2000-08-28 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c (setup_components): Removed the hardcoding of the
shell component IDs. Rather, do an OAF query looking for the
`Evolution::ShellComponent' interface and activate all the
components in the result.
(MAIL_COMPONENT_ID): Removed.
(CALENDAR_COMPONENT_ID): Removed.
(ADDRESSBOOK_COMPONENT_ID): Removed.
* e-storage-set-view.c: Make `sort_model' static.
2000-08-25 Chris Toshok <toshok@helixcode.com>
* e-storage-set-view.c: convert to use ETree instead of GtkCTree.
* e-storage-set-view.h: change superclass from GtkCTree to ETable.
* main.c (main): call e_cursors_init.
* Makefile.am (evolution_LDADD): add libetable.a
2000-08-25 Peter Williams <peterw@helixcode.com>
Silence some obvious assertions.
* e-shell.c (e_shell_construct): Ref our shortcut bar to
sink it. Same with the folder_type_registry.
* e-shell-folder-title-bar.c (destroy): Only attempt to unref
priv->icon if nonnull.
* e-shell-view.c (update_folder_title_bar): Don't attempt to set
the folder_icon/_name if they're NULL.
2000-08-24 Ettore Perazzoli <ettore@helixcode.com>
* evolution-shell-component-client.c
(evolution_shell_component_client_new): Don't abort if the
component cannot be activated. Rather, just return NULL.
2000-08-20 arik devens <arik@helixcode.com>
* Makefile.am (evolution_LDADD): Added UNICODE_LIBS to link in the
new e-text stuff.
2000-08-19 Christopher James Lahey <clahey@helixcode.com>
* e-shell-folder-title-bar.c: Fixed a warning.
2000-08-19 Christopher James Lahey <clahey@helixcode.com>
* e-shell-view.c: Fixed a warning.
2000-08-18 Larry Ewing <lewing@helixcode.com>
* e-shell-folder-title-bar.c (style_set_cb): update the pixmap
define E_USE_STYLES to disable the current darkening behavior
(destroy): free the icon.
(e_shell_folder_title_bar_construct): style_set_cb does everything
important now.
(e_shell_folder_title_bar_set_icon): actually store the pixbuf
when we set it so that we still have it if the style changes and
take care of refcounting them properly.
2000-08-17 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view-menu.c (menu_create_file): Make capitalization of
menu items consistent.
(menu_create_view): Likewise.
(menu_create_help): Likewise.
(e_shell_view_menu_setup): Create a component menu placeholder so
that components can add their own component-specific menus there.
(menu_create_actions): Removed.
(e_shell_view_menu_setup): Don't call it.
(menu_create_tools): Removed.
(e_shell_view_menu_setup): Don't call it.
(menu_create_settings): New.
(e_shell_view_menu_setup): Call it.
2000-08-13 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (delete_event): New. Make the parent shell quit.
2000-08-13 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (shell_view_interface_set_message_cb): Removed
debugging message.
(shell_view_interface_unset_message_cb): Likewise.
2000-08-13 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c: New members `progress_bar_timeout_id',
`progress_bar_value' in `EShellViewPrivate'.
(init): Init them.
(destroy): If the timeout id is not zero, remove the associated
timeout.
(progress_bar_timeout_cb): New.
(start_progress_bar): New.
(stop_progress_bar): New.
(shell_view_interface_set_message_cb): If busy, start the progress
bar. Otherwise, stop it.
(shell_view_interface_unset_message_cb): Stop the progress bar.
* e-shell-view.c (setup_widgets): Enable the progress bar in the
appbar.
* e-shell-view.c (shell_view_interface_unset_message_cb): New
function, callback for the `EvolutionShellView::unset_message'
signal.
(shell_view_interface_set_message_cb): New function, callback for
the `EvolutionShellView::set_message' signal.
(setup_evolution_shell_view_interface): Connect these signals to a
newly created EvolutionShellView object, add ::add_interface this
object to the control's frame.
* evolution-shell-view.c: New.
* evolution-shell-view.h: New.
* Evolution-ShellView.idl: New interface.
2000-08-10 Dan Winship <danw@helixcode.com>
* Evolution-ShellComponent.idl: add "in string evolution_homedir"
to ShellComponent::set_owner's arguments.
* e-shell.c (e_shell_get_local_directory): Expose local_directory.
* e-component-registry.c (register_component): Pass the shell's
"local_directory" to the component as its evolution_homedir.
* evolution-shell-component.c (impl_ShellComponent_set_owner):
Update to include evolution_homedir.
(class_init): Update signal prototype.
* evolution-shell-component-client.c
(evolution_shell_component_client_set_owner): Update to include
evolution_homedir.
* e-init.c: Remove. This wasn't being used.
2000-08-10 Peter Williams <peterw@helixcode.com>
* e-shell-view-menu.c (command_about_box): Add lil' ol'
me to the about box.
2000-08-09 Christopher James Lahey <clahey@helixcode.com>
* e-setup.c, e-shell.c: Fixed some warnings.
2000-08-09 Christopher James Lahey <clahey@helixcode.com>
* e-shell-view.c: Fixed a warning.
2000-08-09 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view-menu.c (menu_create_file_new): Create a placeholder
for the print items.
2000-08-08 Dan Winship <danw@helixcode.com>
* e-setup.c (e_setup): Check for ~/evolution/shortcuts.xml in
addition to ~/evolution, to make sure it's really the directory
we're expecting it to be. Also, convert from old-style config file
to new-style config directory.
2000-08-04 Michael Meeks <michael@helixcode.com>
* evolution-shell-component.c (impl_ShellComponent_populate_folder_context_menu):
unref.
* e-shell.c (e_shell_construct): Remove erroneous refs on
folder_type_registry, storage_set.
* e-shortcuts-view.c (destroy): unref the shortcuts, causing a
massive ripple chain ref-count reaction.
2000-08-03 JP Rosevear <jpr@helixcode.com>
* e-shell.h: Remove gconf references
* e-shell-view.h: Remove gconf references
* main.c (idle_cb): Remove gconf references
* Makefile.am: Remove gconf cflags and libs
* e-shell-view.c (e_shell_view_load_settings): Change to use
gnome-config
(e_shell_view_save_settings): ditto
* e-shell.c (e_shell_restore_from_settings): Change to
use gnome_config
(save_settings_for_views): ditto
2000-08-03 Michael Meeks <michael@helixcode.com>
* e-shell-view.c (destroy): unref the UI handler.
2000-08-03 Jeffrey Stedfast <fejj@helixcode.com>
* e-shell-folder-selection-dialog.c (set_default_folder): Make
sure default_uri isn't NULL!!
2000-08-03 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view-menu.c (command_goto_folder): Just use the current
URI as the @default_uri parameter for
`e_shell_folder_selection_dialog_new()'.
* evolution-session.c (class_init): Call `corba_class_init()'.
* e-shell-folder-selection-dialog.c
(e_shell_folder_selection_dialog_new): @default_path renamed to
@default_uri.
(e_shell_folder_selection_dialog_construct): Likewise. If the
@default_uri is an `evolution:' one, use it as a path; if it is
different, assume it is a physical URI and consequently look for
the folder that has that physical URI and make it the default.
(set_default_folder): New helper function.
(e_shell_folder_selection_dialog_construct): Use it.
* e-storage-set.c (e_storage_set_get_path_for_physical_uri): New.
* e-storage.c (e_storage_get_path_for_physical_uri): New.
2000-07-27 Dan Winship <danw@helixcode.com>
* main.c (idle_cb): work with either gconf 0.5 or newer
2000-07-26 Peter Williams <peterw@helixcode.com>
* e-storage.c (e_storage_new_folder): Fix tiny mem leak.
2000-07-26 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (disconnect_popup_signals): Disconnect the "map"
signal handler too.
2000-07-25 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-folder-creation-dialog.c (add_folder_types): Work around
GtkOptionMenu utter brokenness by destroying the associated
Glade-built GtkMenu and creating a new one from scratch.
2000-07-24 Dan Winship <danw@helixcode.com>
* e-shell.c, main.c: Remove GOAD support.
* evolution-shell-component-client.c: Remove GOAD support.
(evolution_shell_component_client_new): Give the "maybe
OAF_INFO_PATH" message if no oafinfo file was found, and give a
"consult previous error messages" message if the component was
found but not activated. Abort in either case.
2000-07-23 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view-menu.c: Converted to use `bonobo_ui_handler_*()'
stuff directly, instead of converting from GnomeUIInfo.
(command_quit): Update arg types for BonoboUIHandler.
(command_run_bugbuddy): Likewise.
(command_about_box): Likewise.
(command_new_task): Removed.
(command_new_journal_entry): Removed.
(menu_create_file_new): New.
(menu_create_file): New.
(menu_create_edit): New.
(menu_create_view): New.
(menu_create_tools): New.
(menu_create_actions): New.
(e_shell_view_menu_setup): Create menus using them instead of
converting from GnomeUIInfo.
2000-07-22 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c (e_shell_construct): Don't unref NULL shortcuts, you
idiot.
2000-07-22 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (e_shell_view_set_folder_bar_mode): Make the
title bar non-clickable when the folder tree is visible.
* e-shell-folder-title-bar.c: New members `button_arrow' and
`clickable' in `EShellFolderTitleBarPrivate'. Renamed `label'
into `button_label'. Added `label'.
(init): Init them.
(e_shell_folder_title_bar_construct): Pass a pointer to the title
bar as the user data for the "realize" signal. Create `label'.
(title_button_box_realize_cb): Use the `button_arrow' member
instead of using `gtk_object_{set,get}_data()'.
(setup_style): Set the style for `label' too.
(e_shell_folder_title_bar_set_clickable): New.
(e_shell_folder_title_bar_set_title): Set both `label' and
`button_label'.
2000-07-21 Peter Williams <peterw@helixcode.com>
* evolution-shell-client.c (user_select_folder): Don't use
g_main_loop to block the caller; this will break when
threads are enabled and GDK_THREADS_ENTER deadlocks. Use
gtk_main / gtk_main_exit to enter and exit the main loop,
which handles the recursive case correctly.
(impl_FolderSelectionListener_selected): Same.
(impl_FolderSelectionListener_cancel): Same.
(struct _FolderSelectionListenerServant): No more main_loop member.
2000-07-21 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (storage_set_view_box_button_release_event_cb):
Set the toggle state to FALSE on the title bar.
* e-shell-folder-title-bar.c: Signal "title_clicked" replaced by
"title_toggled".
(setup_style): Change the style for the button too.
(e_shell_folder_title_bar_construct): Use a GtkToggleButton, not a
GtkButton.
(e_shell_folder_title_bar_set_toggle_state): New.
2000-07-21 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-folder-title-bar.c (create_icon_pixmap): New. Create a
small arrow-shaped GtkPixmap.
(title_button_box_realize_cb): New. Callback for the "realize"
signal of the button's inner box.
* e-shell-view.c (title_bar_clicked_cb): New function, callback
for the "title_clicked" signal of the title bar.
(setup_widgets): Connect it.
* e-shell-view.c: New member `storage_set_title_bar' in
`EShellViewPrivate'.
(setup_storage_set_subwindow): Set it.
* e-shell-folder-title-bar.c: Use a GtkLabel instead of an
EClippedLabel for the title.
(title_button_clicked_cb): New.
(e_shell_folder_title_bar_construct): Put the label into a button.
Connect the button's "clicked" signal to
`title_button_clicked_cb'.
2000-07-21 Ettore Perazzoli <ettore@helixcode.com>
* evolution-shell-component.c
(impl_ShellComponent_populate_folder_context_menu): If the pointer
to the function to populate the folder context menu is NULL, don't
do anything.
2000-07-21 Ettore Perazzoli <ettore@helixcode.com>
* e-storage-set-view.c (popup_folder_menu): New. Create a
BonoboUIHandler-managed pop-up menu, let the component fill it in
with `::populate_folder_context_menu', and display it. Then
destroy it with the associated BonoboUIHandler.
(handle_right_button_selection): New.
(handle_left_button_selection): New. This pops up the right-click
menu.
(button_release_event): Use them.
(init): Set the `GTK_BUTTON_SELECTS' flag for button #3's actions.
* evolution-shell-component-client.c
(evolution_shell_component_client_populate_folder_context_menu):
New.
(evolution_shell_component_client_async_create_folder): Added
preconditions.
* e-shell-view.c (e_shell_view_save_settings): Add missing cast.
* evolution-shell-component.c: New member
`populate_folder_context_menu' in
`EvolutionShellComponentPrivate'.
(impl_ShellComponent_populate_folder_context_menu): New,
implementation for
`Evolution::ShellComponent::populate_folder_context_menu'.
(corba_class_init): Install it.
(evolution_shell_component_new): New arg
@populate_folder_context_menu.
(evolution_shell_component_construct): Likewise.
* Evolution-ShellComponent.idl: New method
`::populate_folder_context_menu'.
2000-07-20 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (e_shell_view_save_settings): Save the paned
positions.
(e_shell_view_load_settings): Restore them.
2000-07-20 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c (save_settings_for_views): New. Code moved out of
`e_shell_save_settings'.
(e_shell_save_settings): Use it.
(save_settings_for_component): New.
(save_settings_for_components): New.
(e_shell_save_settings): Use it, so that we make all the
components save settings too.
* e-component-registry.c
(e_component_registry_get_id_list): New.
(e_component_registry_get_component_by_id): New.
* Makefile.am (libeshell_a_SOURCES): Add
`evolution-shell-component-client' and `evolution-session'.
* evolution-session.c: New.
* evolution-session.h: New.
* Makefile.am (evolution_SOURCES): Removed files that were already
in `libeshell.a'.
* Evolution.idl: #include <Evolution-Session.idl>.
* Evolution-Session.idl: New.
2000-07-20 Ettore Perazzoli <ettore@helixcode.com>
* main.c (no_views_left_cb): Call `e_shell_quit()' on the shell
before getting out of the GTK+ main loop.
(view_delete_event_cb): Removed.
(idle_cb): Don't call it.
* e-shell-view-menu.c (command_new_view): New, implementation of
the "New view" command.
2000-07-16 Damon Chaplin <damon@helixcode.com>
* e-shortcuts-view.c (e_shortcuts_view_construct): created a model
for the EShortcutBar. This will probably have to be moved to support
multiple views.
(class_init): #if'd out overriding the class functions. They don't
exist any more (they are in the model instead).
2000-07-12 Christopher James Lahey <clahey@helixcode.com>
* main.c: Fixed to match gconf API change.
2000-07-10 Dan Winship <danw@helixcode.com>
* main.c (development_warning): Update the message.
2000-07-10 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-folder-title-bar.c (title_button_clicked_cb):
Temporarily `#if 0'ed out.
2000-07-10 Dan Winship <danw@helixcode.com>
* e-shell.c (impl_Shell_user_select_folder): Translate a
default_folder of "" into NULL (which can't be passed over CORBA).
2000-07-10 Ettore Perazzoli <ettore@helixcode.com>
* e-storage.c (e_storage_new_folder): Removed debugging message.
* e-storage-set.c (storage_new_folder_cb): Removed debugging
message.
2000-07-10 Federico Mena Quintero <federico@helixcode.com>
* e-shell-view.c (unrealize): As a quasi-hack, do a gdk_flush()
when the shell view is unrealized so that the DeleteEvent gets
sent to the remote plugs as soon as possible before we start
making other CORBA calls. The problem is that our CORBA pipe is
synchronous while our X pipe is asynch. We have to ensure
ordering for certain operations. This is NOT the correct and
complete fix, which should go in Bonobo.
2000-07-08 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (e_shell_view_display_uri): Don't update the
current URI if there are problems creating a view for it.
(show_error): Remove. Not used anymore.
2000-07-08 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view-menu.c: Cleanup some unused menu items and added
"FIXMEs" for the ones we plan to add in the short term but are not
implemented yet.
(command_create_folder): Get rid of an unused variable.
2000-07-07 Ettore Perazzoli <ettore@helixcode.com>
* evolution-shell-client.c (user_select_folder): Fix small warning
by adding proper cast when filling in the CORBA sequence struct.
2000-07-07 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c (setup_corba_storages): Ref the CORBA storage
registry.
2000-07-06 Ettore Perazzoli <ettore@helixcode.com>
* evolution-storage.c: Removed `corba_storage_registry' member
from `EvolutionStoragePrivate'.
(destroy): Don't unref/release it. Call
`StorageListener::destroy' to notify that we are dead.
(evolution_storage_register): Don't ref and store the registry.
2000-07-05 Dan Winship <danw@helixcode.com>
* e-shell.c (e_shell_save_settings): Use the correct gconf path
(/apps, not /app), and call gconf_client_suggest_sync at the end.
(e_shell_restore_from_settings): Use the correct gconf path.
2000-07-05 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view-menu.c (command_goto_folder): Set the folder
selection dialog as transient for the shell view.
(command_create_folder): New, bound to the "Create folder"
command in the "File" menu.
2000-07-01 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c (impl_Shell_user_select_folder): New arg
@allowed_types. Pass it to the EShellFolderSelectionDialog.
Connect to the "cancelled" and "folder_selected" signals instead
of "clicked".
(corba_listener_destroy_notify): New callback.
(impl_Shell_user_select_folder): Associate it to the DestroyNotify
for the "corba_listener" GtkObject data, so we don't leak it.
(folder_selection_dialog_clicked_cb): Don't release the listener
interface here.
(folder_selection_dialog_cancelled_cb): New callback for the
"cancelled" signal.
(folder_selection_dialog_folder_selected_cb): New callback for the
"folder_selected" signal.
* e-shell-view-menu.c (command_goto_folder): Don't connect to
"clicked". Connect to "cancelled" and "folder_selected" instead.
(folder_selection_dialog_cancelled_cb): New, callback for the
"cancelled" signal.
(folder_selection_dialog_folder_selected_cb): New, callback for
the "folder_selected" signal.
* e-shell-folder-selection-dialog.c New members `allowed_types',
`storage_set' in `EShellFolderSelectionDialogPrivate'.
(class_init): Install signals "folder_selected", "cancelled".
(init): Init to NULL.
(impl_destroy): Free/unref them.
(e_shell_folder_selection_dialog_new): New arg @allowed_types.
(e_shell_folder_selection_dialog_construct): New arg
@allowed_types. Initialize `priv->allowed_types' from it.
(check_folder_type): New function. Check if the selected folder
is of the appropriate type and, if not, return FALSE and pop up an
error dialog. Otherwise, return TRUE.
(impl_clicked): Use `check_folder_type()' to check if the folder
type is OK. If it is not, stop emission of the "clicked" signal.
* e-shell-folder-selection-dialog.h: New signals
"folder_selected", "cancelled".
* evolution-shell-client.c
(evolution_shell_client_user_select_folder): New arg
@allowed_types.
(user_select_folder): New arg @allowed_types. Pass this to the
::user_select_folder method.
* Evolution-Shell.idl: New arg @required_types in
::user_select_folder.
2000-07-01 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c (setup_components): Don't ref the component registry.
2000-06-30 Dan Winship <danw@helixcode.com>
* Evolution-Shell.idl: add "cancel" to FolderSelectionListener.
* evolution-shell-client.c (impl_FolderSelectionListener_cancel):
Implement cancel (set *uri and *physical_uri to NULL).
(evolution_shell_client_user_select_folder): document %NULL uri
and physical_uri return values.
* e-shell.c (folder_selection_dialog_clicked_cb): If the user
clicked "Cancel" or used the wm to close the dialog, call _cancel
instead of _selected.
2000-06-30 Ettore Perazzoli <ettore@helixcode.com>
* evolution-shell-component.c (impl_ShellComponent_set_owner):
Duplicate the object before storing it, you doofus.
2000-06-30 Ettore Perazzoli <ettore@helixcode.com>
* evolution-shell-component.c (impl_ShellComponent_unset_owner):
NULL the owner_client.
2000-06-30 Ettore Perazzoli <ettore@helixcode.com>
* evolution-shell-client.h
(evolution_shell_client_user_select_folder): Add prototype.
2000-06-29 Ettore Perazzoli <ettore@helixcode.com>
* evolution-shell-component.c: New member `owner_client'. Removed
member `corba_owner'. All the code updated to use it.
(evolution_shell_component_get_owner): Changed so that it returns
an EvolutionShellClient instead of the raw CORBA object.
* evolution-shell-component.h: Change signal "owner_set" to get an
EvolutionShellClient wrapper instead of a CORBA interface.
* evolution-shell-client.c: New.
* evolution-shell-client.h: New.
2000-06-29 Dan Winship <danw@helixcode.com>
* evolution-shell-component-client.c
(evolution_shell_component_client_new): Update warning message to
not say "CRASHING", since it won't if you have current bonobo.
2000-06-29 Peter Williams <peter@beta.newton.cx>
* e-shell.c (e_shell_restore_from_settings): Check for the
insanely invalid NumberOfViews = 0 case.
2000-06-29 Peter Williams <peter@helixcode.com>
* e-shell.c (e_shell_construct): Ref the various E-things that
we create to go with our unrefs in the destructor.
2000-06-29 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (e_shell_view_construct): Don't ref the shell.
(destroy): Don't unref the shell.
2000-06-29 Ettore Perazzoli <ettore@helixcode.com>
* e-shortcuts.c (e_shortcuts_construct): Fix typo: @shortcuts
should unset `GTK_FLOATING', not @storage_set.
* e-shell-view.c (get_storage_set_path_from_uri): If @uri is NULL,
return NULL.
* main.c (idle_cb): Restore the shell from the settings. If this
fails, just create a new view.
* e-shell.c (e_shell_save_settings): New.
(e_shell_quit): Save settings before exiting.
(e_shell_restore_from_settings): New.
* e-shell-view.c (e_shell_view_save_settings): New.
(e_shell_view_load_settings): New.
* main.c (idle_cb): Initialize Gconf, create the GConfClient and
pass it to `e_shell_new()'.
* e-shell.c: New member `gconf_client' in `EShellPrivate'.
(destroy): Unref it if not NULL.
(init): Init to NULL.
(e_shell_new): New param @gconf_client.
(e_shell_construct): Likewise.
* Makefile.am (INCLUDES): Add `GCONF_CFLAGS'.
2000-06-27 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-folder-title-bar.c (e_shell_folder_title_bar_construct):
Enable the title bar button.
2000-06-27 Michael Zucchi <zucchi@zedzone.mmc.com.au>
* e-shell.c (folder_selection_dialog_clicked_cb): Close the dialog
when done. Dont do anything if 'new' was pressed, and always
return empty strings if 'cancel' was pressed.
2000-06-27 Michael Zucchi <zucchi@zedzone.mmc.com.au>
* e-shell.c (impl_Shell_user_select_folder): Set the listener as
the corba_listener data, not the shell.
2000-06-26 Christopher James Lahey <clahey@helixcode.com>
* glade/Makefile.am: Added EXTRA_DIST for make distcheck.
2000-06-19 Ettore Perazzoli <ettore@helixcode.com>
* e-local-storage.c: Don't #define POSIX_SOURCE at all; this is
not needed anymore as we no longer use `readdir_r'.
2000-06-19 Chris Toshok <toshok@helixcode.com>
* e-local-storage.c: #undef _POSIX_SOURCE after including
dirent.h. this breaks the build on freebsd if we leave it
#defined. go figure.
2000-06-19 Dan Winship <danw@helixcode.com>
* evolution-shell-component-client.c
(evolution_shell_component_client_new): Add a warning before
crashing due to a known bug when it can't activate a component, so
people don't have to waste any time trying to figure out what's
up.
2000-06-13 Ettore Perazzoli <ettore@helixcode.com>
* Makefile.am: Compile the CORBA-built files,
evolution-shell-component.c and evolution-storage.c into a
separate `libeshell.a' library. Link the `evolution' executable
to it. Also cleaned up a bit and got rid of the `CPP_FLAGS'
assignment.
2000-06-12 Michael Meeks <michael@helixcode.com>
* e-shell-folder-selection-dialog.c: include gnome-dialog.h
(PARENT_TYPE): GNOME_TYPE_DIALOG replaced with gnome_dialog_get_type.
2000-06-10 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c (impl_Shell_user_select_folder): New, implementation
for `Shell:user_select_folder'.
(corba_class_init): Install it.
(folder_selection_dialog_clicked_cb): Callback for the folder
selection dialog.
* Evolution-Shell.idl: New method `Shell::user_select_folder'.
New interface `FolderSelectionListener'.
* glade/e-shell-folder-creation-dialog.glade: Make it larger.
* e-shell-folder-creation-dialog.h: Fix typo: #include
<gtk/gtkwindow.h>, not <gtk/gtkwidget.h>.
* e-shell-view-menu.c: Added "Go to folder..." command.
(commmand_goto_folder): Implementation for it.
* e-shell-folder-selection-dialog.c: New.
* e-shell-folder-selection-dialog.h: New.
2000-06-10 Ettore Perazzoli <ettore@helixcode.com>
* e-local-folder.c (save_metadata): Don't set the description in
the XML file if null. Compute the physical path correctly.
* e-folder.c (e_folder_construct): Allow NULL description.
* evolution-shell-component-client.c (init): Initalize
`listener_interface' to `CORBA_OBJECT_NIL' and `listener_servant'
to NULL.
(create_listener_interface): Return void and set the `servant' and
`listener_servant' fields directly.
(evolution_shell_component_client_async_create_folder): Updated
accordingly.
* e-shell-folder-creation-dialog.c: New struct `DialogData' to be
passed to the dialog's callbacks.
(dialog_data_destroy): New.
(e_shell_show_folder_creation_dialog): Set up a `DialogData'
object and pass it as the data for the signals.
(shell_destroy_cb): New handler for the "destroy" signal on the
shell.
(e_shell_show_folder_creation_dialog): Connect it.
(dialog_destroy_cb): New handler for the "destroy" signal on the
dialog; it frees the associated `DialogData'.
(e_shell_show_folder_creation_dialog): Connect it.
(async_create_cb): New function, callback for the async folder
creation function.
(entry_name_is_valid): New function to check if the entered folder
name is valid.
(dialog_clicked_cb): Check if the specified folder name is valid
and, if so, asynchronously create the new folder.
(add_folder_types): Set "type_name" data on each menu item.
* e-storage-set-view.c (e_storage_set_view_get_current_folder):
New function.
* e-storage-set.c (get_storage_for_path): New helper function.
(e_storage_set_get_folder): Use it.
* e-storage.c (e_storage_async_create_folder): Renamed from
`e_storage_create_folder'.
(e_storage_remove_folder): Renamed from `e_storage_remove_folder'.
(impl_create_create_folder): Renamed from `impl_create_folder'.
(impl_create_remove_folder): Renamed from `impl_remove_folder'.
(class_init): Updated accordingly.
(e_storage_result_to_string): New function.
* e-storage.h: `::create_folder' renamed to
`::async_create_folder'. `::remove_folder' renamed to
`::async_remove_folder'.
* evolution-shell-component.h: Return type of
`EvolutionShellComponentCreateFolderFn' and
`EvolutionShellComponentRemoveFolderFn' changed to `void'.
* e-local-storage.c: `EComponentRegistry component_registry'
replaced with `EFolderTypeRegistry folder_type_registry' in
`ELocalStoragePrivate'
(component_async_create_folder_callback): New function, to handle
the callback from EvolutionShellComponent.
(construct): Likewise.
(e_local_storage_open): Replaced @component_registry with
@folder_type_registry.
(impl_create_folder): Implemented.
* e-local-folder.c (e_local_folder_new): New.
(e_local_folder_construct): New.
(e_local_folder_save): Precondition: physical URI is not NULL.
(save_metadata): Unlink the metadata file if `xmlSaveFile()'
fails.
* e-storage.c (e_storage_create_folder): Precondition: @path is
absolute.
(e_storage_remove_folder): Likewise.
2000-06-09 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view-menu.c: Removed folder menu and "save as..." command.
* main.c (main): Call `glade_gnome_init()'.
* e-shell-view-menu.c (command_new_folder): Implemented.
* e-shell-folder-creation-dialog.c: New.
* e-shell-folder-creation-dialog.h: New.
* glade/Makefile.am: New.
* glade/e-shell-folder-creation-dialog.glade: New.
* e-shell-view.c (e_shell_view_get_current_uri): New.
* e-folder-type-registry.c
(e_folder_type_registry_get_type_names): New.
* e-shell-view.c (get_control_for_uri): Updated to use
`EvolutionShellComponentClient'.
* e-folder-type-registry.c: Use `EvolutionShellComponentClient's
instead of `BonoboObjectClient's.
* e-component-registry.c: Use `EvolutionShellComponentClient'
instead of `BonoboObjectClient' in `Component'.
(component_new): Updated accordingly.
(register_component): Likewise.
* evolution-shell-component-client.h: New.
* evolution-shell-component-client.c: New.
* evolution-shell-component.c
(impl_ShellComponent_async_create_folder): New, implementation of
`::async_create_folder'.
(impl_ShellComponent_async_remove_folder): New, implementation of
`::async_remove_folder'.
(corba_class_init): Install them.
(evolution_shell_component_new): New args `create_folder_fn' and
`remove_folder_fn' for setting the handlers for these new methods.
(evolution_shell_component_construct): Likewise.
* Evolution-ShellComponent.idl
(ShellComponent::async_create_folder): New.
(ShellComponent::async_remove_folder): New.
(ShellComponentListener): New.
* evolution-shell-component.c (impl_ShellComponent_create_view):
New param @type. Use the new `EvolutionShellComponentCreateViewFn'.
* evolution-shell-component.h: New enum `EvolutionShellComponentResult'.
Changed `EvolutionShellComponentCreateViewFn' to return an
`EvolutionShellComponentResult'.
* e-shell-view.c (get_control_for_uri): Pass the folder type to
`ShellComponent::create_view'.
* Evolution-ShellComponent.idl: New param @type for
`ShellComponent::create_view'.
2000-06-08 Miguel de Icaza <miguel@helixcode.com>
* main.c (development_warning): Use version here. Add padding to
the message.
Only destroy object if its window was not closed.
2000-06-08 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (setup_bonobo_ui_handler): Oops. Don't create
the toolbar. This was not supposed to be committed.
2000-06-07 Ettore Perazzoli <ettore@helixcode.com>
* e-storage.c (folder_destroy): Don't destroy the subfolders.
(remove_folder): New helper function.
(free_private): Use it.
(e_storage_removed_folder): Use it here too.
(folder_destroy): Don't unref the EFolder if NULL.
* e-storage-set-view.c (e_storage_set_view_construct): Use
`gtk_signal_connect_while_alive()' instead of just
`gtk_signal_connect()' so that the signal handler is automatically
removed when we are destroyed.
* e-storage-set.c (e_storage_set_remove_all_storages): New
function.
* e-shell-view.c (e_shell_view_construct): Use `bonobo_object_ref'
on the shell instead of `gtk_object_ref'.
(destroy): Unref the shell.
* e-local-storage.h: #include "e-component-registry.h".
* e-shell.c (setup_local_storage): Renamed from `setup_storages'.
Only set up the local storage, not the CORBA one, and don't create
the storage set.
(e_shell_construct): Create the storage set here instead. Call
`setup_local_storage' after setting up the components.
* e-local-storage.c: New member `component_registry' in
`ELocalStoragePrivate'.
(init): Init to NULL.
(destroy): If not null, unref it.
(e_local_storage_open): New arg @component_registry.
(construct): New arg @component_registry. Init
`priv->component_registry' from it.
* e-local-storage.c (impl_get_name): Renamed from `get_name'.
(impl_create_folder): New function, implementing
`EStorage::create_folder'. Just a stub for now.
(impl_remove_folder): New function, implementing
`EStorage::remove_folder'. Just a stub for now.
(class_init): Install these stub implementations.
* e-storage.c (e_storage_remove_folder): New function.
(e_storage_create_folder): New function.
(impl_create_folder): New function, default implementation for
`::create_folder'.
(impl_remove_folder): New function, default implementation for
`::remove_folder'.
(class_init): Install the implementations.
* e-storage.c (impl_get_name): Renamed from `get_name'.
(impl_get_folder): Renamed from `get_folder'.
(impl_list_folders): Renamed from `list_folders'.
* e-storage.h: New virtual methods `remove_folder',
`create_folder'.
* e-storage.c (e_storage_removed_folder): Renamed from
`e_storage_remove_folder'.
* e-corba-storage.c (impl_StorageListener_removed_folder): Updated
accordingly.
2000-06-02 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (setup_bonobo_ui_handler): Create the default toolbar.
2000-06-02 Jeffrey Stedfast <fejj@helixcode.com>
* e-shell-view-menu.c: Changed "Using the Shell" to "Getting Started"
2000-06-02 Christopher James Lahey <clahey@helixcode.com>
* e-shell-view.c: Free the uri variable.
* e-shell.c: Free the local_directory variable.
2000-06-02 Ettore Perazzoli <ettore@helixcode.com>
* main.c (view_delete_event_cb): New callback for the
"delete_event" on the view.
(idle_cb): Connect it.
2000-06-01 Christopher James Lahey <clahey@helixcode.com>
* e-storage-set-view.c (set_e_shortcut_selection): Added a
g_return_if_fail check.
2000-06-01 Dan Winship <danw@helixcode.com>
* e-shell-view-menu.c (command_help): New menu callback to launch
the help browser.
(menu_help): add pointers to the users' guide.
(e_shell_view_menu_setup): Add the help menu stuff to the uih.
* main.c (main): Set up gettext. (Problem noted by Héctor García
Alvarez)
2000-06-01 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (DEFAULT_WIDTH): Add more 5 pixels.
2000-06-01 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (DEFAULT_WIDTH): Made the default window a bit
narrower.
(DEFAULT_HEIGHT): And shorter.
(setup_widgets): Set the border width of the vbox that holds the
title bar to 2 pixels, so that the view looks a bit nicer.
2000-06-01 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (DEFAULT_TREE_WIDTH): Made the tree 150 pixel
wide [instead of 100].
(setup_widgets): Use `DEFAULT_TREE_WIDTH' instead of
`DEFAULT_SHORTCUT_BAR_WIDTH' where appropriate.
(e_shell_view_construct): Hide the folder bar by default.
* e-storage-set-view.c (e_storage_set_view_construct): Set
auto-resize mode for column one.
2000-06-01 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view-menu.c (e_shell_view_menu_setup): Set the
statusbar.
* e-shell-view.c: New member `appbar' for `EShellViewPrivate'.
(init): Initialize to NULL.
(setup_widgets): Install a status bar and set `appbar' to point to
it.
(setup_bonobo_ui_handler): Make the BonoboUIHandler use `appbar'
as its statusbar.
(e_shell_view_get_appbar): New function.
(e_shell_view_construct): Set up the BonoboUIHandler after setting
up the widgets.
* e-shortcuts.c (class_init): Add new signals "new_shortcut",
"removed_shortcut", "new_group", "removed_group".
(e_shortcuts_remove_shortcut): Emit "remove_shortcut".
(e_shortcuts_add_shortcut): Emit "new_shortcut".
(e_shortcuts_remove_group): Emit "remove_group".
(e_shortcuts_add_group): Emit "new_group".
(unload_shortcuts): Emit "remove_group" for all the groups.
* e-shortcuts.h: New signals "new_shortcut", "removed_shortcut",
"new_group", "removed_group".
* e-shortcuts-view.c (pop_up_right_click_menu): New function to
pop up the right-click menu for the shortcut bar.
(pop_up_right_click_menu_for_shortcut): New function.
(selected_item): Pop up right click menu when appropriate. Don't
activate the shortcut when right-clicking.
2000-05-31 Ettore Perazzoli <ettore@helixcode.com>
* evolution-storage.h: #include 'Evolution.h".
2000-05-31 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c (show_error): Use `set_current_notebook_page()'
instead of `gtk_notebook_set_page()'; this will also deactivate
the current control properly.
* e-shell-view-menu.c (e_shell_view_menu_setup): Initialize the
state of the shortcut/folder toggle menu items using
`e_shell_view_get_shortcut_bar_mode()' and
`e_shell_view_get_folder_bar_mode()'.
(command_toggle_shortcut_bar): Removed debugging message.
(command_toggle_folder_bar): Likewise.
* e-shell-view.c (e_shell_view_get_shortcut_bar_mode): New
function.
(e_shell_view_get_folder_bar_mode): New function.
2000-05-31 Ettore Perazzoli <ettore@helixcode.com>
* e-storage-set-view.c: New constant `DRAG_RESISTANCE'. New
members `button_x', `button_y' in `EStorageSetViewPrivate'.
(init): Initialize to zero.
(button_press_event): Set.
(motion_notify_event): Don't start drag unless the current x/y
position is farther than `DRAG_RESISTANCE', in any of the two
directions, from the original position of the button click.
(button_release_event): Always ungrab the pointer, even if
`selected_row_path' is NULL.
2000-05-31 Ettore Perazzoli <ettore@helixcode.com>
* evolution-shell-component.c (class_init): Eeek!
s/owner_set/owner_unset/.
* e-shell-folder-title-bar.c (e_shell_folder_title_bar_construct):
Increase the size of the border of the hbox slightly to make the
title bar a bit nicer.
2000-05-31 Ettore Perazzoli <ettore@helixcode.com>
* e-component-registry.c (component_free): Invoke `::unset_owner'
on the component before releasing it.
* evolution-shell-component.c (class_init): Install the
"owner_set" signal.
(impl_ShellComponent_unset_owner): New function, implementation of
`ShellComponent::unset_owner'.
(corba_class_init): Install it.
* evolution-shell-component.h: New signal "owner_unset".
* Evolution-ShellComponent.idl: New method `ShellComponent::
unset_owner'.
* e-shell.c (e_shell_quit): Destroy all the views explicitly.
* e-shell-view-menu.c: Changed `Show shortcut bar' and `Show
folder tree' items into toggle items.
(shortcut_bar_mode_changed_cb): New callback to update the status
of the "show shortcut bar" toggle item when the shortcut bar is
hidden/shown in the view.
(folder_bar_mode_changed_cb): Likewise for the folder bar.
(e_shell_view_menu_setup): Connect these to the corresponding
signals on the shell.
* e-shell-view.c: New members `shortcut_bar_mode' and
`folder_bar_mode' in `EShellViewPrivate'.
(init): Initialize `shortcut_bar_mode' and `folder_bar_mode' to
`E_SHELL_VIEW_SUBWINDOW_HIDDEN'.
(class_init): Add the new signals.
(e_shell_view_set_shortcut_bar_mode): Renamed from
`e_shell_view_show_shortcuts'. Emit "shortcut_bar_mode_changed"
and update the `shortcut_bar_mode' member.
(e_shell_view_set_folder_bar_mode): Renamed from
`e_shell_view_show_folders'. Emit "folder_bar_mode_changed" and
update the `folder_bar_mode' member.
* e-shell-view.h: New signals "shortcut_bar_mode_changed",
"folder_bar_mode_changed".
* e-shell-view.c (setup_menus): Removed.
(e_shell_view_construct): Use `e_shell_view_menu_setup' instead.
(e_shell_view_get_bonobo_ui_handler): New function.
* e-shell-view-menu.c (e_shell_view_menu_setup): New.
* e-shell.c (impl_Shell_get_component_for_type): New function,
implementation of `Evolution::Shell::get_component_for_type'.
(corba_class_init): Install it into the EPV.
* Evolution-Shell.idl: Added method `get_component_for_type'.
2000-05-30 Ettore Perazzoli <ettore@helixcode.com>
* e-shortcuts.c: New members `dirty', `save_idle_id' in
`EShortcutsPrivate'.
(init): Initialize.
(destroy): If the idle ID is nonzero, remove the idle. If `dirty'
is true, save.
(idle_cb): New.
(schedule_idle): New.
(make_dirty): New.
(e_shortcuts_remove_shortcut): Call it.
(e_shortcuts_add_shortcut): Likewise.
(e_shortcuts_remove_group): Likewise.
(e_shortcuts_add_group): Likewise.
* e-shell.c (e_shell_construct): Updated to match the `EShortcuts'
API changes.
* e-shortcuts.c: New member `file_name' in `EShortcutsPrivate'.
(init): Init to NULL.
(destroy): Free it.
(e_shortcuts_load): Removed.
(e_shortcuts_save): Removed.
(e_shortcuts_new): New arg @file_name. Load from the specified
file name.
* e-shortcuts-view.c (added_item): New method implementation.
(removed_item): New method implementation.
(added_group): New method implementation.
(removed_group): New method implementation.
(class_init): Install these.
* e-shortcuts.c (e_shortcuts_remove_shortcut): New function.
(e_shortcuts_add_shortcut): New function.
(e_shortcuts_remove_group): New function.
(e_shortcuts_add_group): New function.
* e-shell-view.c: New member `view_title_bar' in
`EShellViewPrivate'.
(setup_widgets): Put an EShellFolderTitleBar on top of the tree
view and the content view.
(update_window_icon): Renamed from `set_icon'.
(update_folder_title_bar): New.
(popup_tree): New function to pop up the tree view when the title
button in the title bar is clicked.
(folder_title_clicked_cb): New callback for the "clicked" signal
of EShellFolderTitleBar.
(setup_widgets): Don't add a title bar to the shortcut bar.
(create_storage_set_subwindow): New helper function.
(setup_widgets): Use it.
(show_error): Use an EClippedLabel instead of a GtkLabel.
* e-shell-view.c: Replaced all the occurences of `gpointer' with
`void *' for consistency.
* e-shell-folder-title-bar.c: New file.
* e-shell-folder-title-bar.h: New file.
* e-storage-set-view.c (e_storage_set_view_construct): Ooops. Fix
inverted key/value pair in the call to `g_hash_table_insert()'.
2000-05-28 Dan Winship <danw@helixcode.com>
* main.c (main): Remove extra free of evolution_directory.
2000-05-28 Ettore Perazzoli <ettore@helixcode.com>
* evolution-storage.c (evolution_storage_register): Use the
storage's name when registering.
2000-05-26 Matt Loper <matt@helixcode.com>
* e-shell-view-menu.c (command_about_box): Make authorlist more
alphabetical.
(command_show_treeview): New function; shows the treeview, when it
has been hidden.
(command_show_shortcut_bar): New function; shows the shortcut bar,
when it's been hidden.
2000-05-26 Ettore Perazzoli <ettore@helixcode.com>
* e-corba-storage.c (impl_StorageListener_new_folder): Set the
physical URI on the folder using `e_folder_set_physical_uri()'.
* e-local-folder.c (get_physical_uri): Removed.
(construct_loading_metadata): Use EFolder's `physical_uri' field
instead of ours, which is gone.
(save_metadata): Likewise.
(destroy): Don't free.
* e-local-folder.h: Removed `physical_uri' from `ELocalFolder'.
* e-folder.c: New member `physical_uri' in `EFolderPrivate'.
(init): Initialize to NULL.
(destroy): Free it.
(get_physical_uri): Removed.
(e_folder_set_physical_uri): New function.
* e-storage-set.c (e_storage_set_get_folder): Fix off-by-one error
in extracting the base name.
* e-storage.c: New member `path' in `Folder'.
(folder_destroy): Free it.
(folder_new): New arg. Initialize `path' from it.
(e_storage_construct): Updated accordingly.
(e_storage_new_folder): Likewise.
(e_storage_remove_folder): Remove the folder from the hash.
* e-storage-set-view.c (remove_node): New function.
(removed_storage_cb): Use it.
(new_folder_cb): New function, callback for the "new_folder"
signal on the EStorageSet.
(removed_folder_cb): New function, callback for the
"removed_folder" signal on the EStorageSet.
(e_storage_set_view_construct): Connect these signal handlers to
the respective signals on our model storage.
* e-storage-set.c (storage_new_folder_cb): New function, callback
for the "new_folder" signal on the storages.
(storage_removed_folder_cb): New function, callback for the
"removed_folder" signal on the storages.
(e_storage_set_add_storage): Connect them to the signals of the
storage being added.
* e-corba-storage-registry.c
(impl_StorageRegistry_register_storage): Throw an exception if
`e_storage_set_add_storage()' returns false.
* e-shell.c (setup_storages): Unref the local storage after adding
to the storage set.
* e-corba-storage-registry.c
(impl_StorageRegistry_register_storage): Unref the storage after
adding to the storage set.
* e-storage-set.c: New hash table `name_to_named_storage' in
`EStorageSetPrivate'.
(named_storage_new): New helper function.
(named_storage_destroy): New helper function.
(e_storage_set_add_storage): Use the hash table. Return value
changed to `gboolean'. Return FALSE if there is a storage with
that name already. Also, ref the storage.
(e_storage_set_remove_storage): Likewise [but of course don't ref
the storage].
(e_storage_set_get_storage): Use the `name_to_named_storage' hash
table.
(destroy): Destroy the `name_to_named_storage' hash.
* e-storage-set.h: New signals "new_folder", "removed_folder".
* e-storage.c (e_storage_get_watcher_for_path): Removed.
(get_watcher_for_path): Removed.
(class_init): Install signals "new_folder" and "removed_folder".
(e_storage_remove_folder): Emit "removed_folder".
(e_storage_new_folder): Emit "new_folder".
* e-storage.h: Removed method `get_watcher_for_path'. New signals
"new_folder", "removed_folder".
* e-storage-watcher.c: Removed.
* e-storage-watcher.h: Removed.
* e-corba-storage-registry.c (corba_class_init): Set the
Bonobo_Unknown evp parts.
* evolution-storage.c: New.
* evolution-storage.h: New.
* evolution-shell-component.c
(evolution_shell_component_get_owner): New.
* e-storage-set-view.c (new_storage_cb): New function.
(e_storage_set_view_construct): Connect to the "new_storage"
signal on the EStorageSet.
(removed_storage_cb): New function.
(e_storage_set_view_construct): Connect to the "removed_storage"
signal on the EStorageSet.
* e-storage-set-view.c (e_storage_set_view_construct): Make this
always look pretty, with Helix GNOME or without.
2000-05-25 Christopher James Lahey <clahey@helixcode.com>
* e-storage-set-view.c: Make this always look pretty, with Helix
GNOME or without.
2000-05-25 Ettore Perazzoli <ettore@helixcode.com>
* e-storage-set-view.c (e_storage_set_view_construct): Set the
dotted line type again. Dotted is less butt-ugly than continuous.
* e-shell-view.c (show_error): Display page zero in the notebook.
* main.c (idle_cb): Renamed from `new_view_idle_cb'. Create the
EShell object here, because now the shell depends on the GLib loop
to be running for correct operation.
(main): Don't create the EShell here.
* e-storage-set-view.c (get_pixmap_and_mask_for_folder): If the
icon is not found, set the returned pixmap and mask to NULL.
* e-shell.c (e_shell_construct): Added precondition: @corba_object
must be non-nil.
(e_shell_new): Added precondition: @local_direcory must be
non-null.
* evolution-shell-component.c: New.
* evolution-shell-component.h: New.
* e-shell.c: New member `component_registry' in `EShellPrivate'.
(init): Initialize to NULL.
(destroy): Unref it.
(setup_components): New function to set up the compnent registry
and initialize the mail, calendar and addressbook components.
(e_shell_construct): Call it.
* e-storage-set.c: Updated to use EFolderTypeRegistry.
* e-storage-set.h: Likewise.
* e-shortcuts.c: Likewise.
* e-shortcuts.h: Likewise.
* e-shell.c: Likewise.
* e-shell.h: Likewise.
* e-shell-view.c: Likewise.
* e-shortcuts-view.c: Likewise.
* e-storage-set-view.c: Likewise.
* e-component-registry.c: New.
* e-component-registry.h: New.
* e-folder-type-registry.c: New.
* e-folder-type-registry.h: New.
* e-folder-type-repository.c: Removed.
* e-folder-type-repository.h: Removed.
* Evolution-ShellComponent.idl: New struct `FolderType'; new type
`FolderTypeList'. New attribute `supported_types'.
(ShellComponent::set_owner): Renamed from `set_shell'.
(ShellComponent::create_view): New.
2000-05-24 Christopher James Lahey <clahey@helixcode.com>
* e-shell-view.c: Was using the wrong include here.
* e-storage-set-view.c: Got rid of the lines in the tree view.
2000-05-24 Christopher James Lahey <clahey@helixcode.com>
* Makefile.am: Added libepaned.a.
* e-shell-view.c: Switched from GtkPaned to EPaned.
2000-05-23 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c: New member `corba_storage_registry' in
`EShellPrivate'.
(init): Initialize it to NULL.
(destroy): Unref it if not NULL.
(setup_corba_storages): New function to set up the CORBA storage
registry and `bonobo_object_add_interface()' it to the shell.
(setup_storages): Call it from here.
* e-shell.h, e-shell.c: Derive EShell from BonoboObject instead of
GtkObject.
* e-storage.c (e_storage_remove_folder): Return value changed into
`gboolean'; return false if an error occurs, true otherwise.
(e_storage_new_folder): Likewise.
* e-corba-storage-registry.c: New.
* e-corba-storage-registry.h: New.
* e-corba-storage.c: New.
* e-corba-storage.h: New.
* Evolution.idl: Include the new IDLs, but no
`evolution-service-repository.idl' anymore.
* Evolution-Shell.idl: New.
* Evolution-ShellComponent.idl: New.
* Evolution-Storage.idl: New.
* evolution-service-repository.idl: Removed.
* evolution-service-repository.c: Removed.
* evolution-service-repository.h: Removed.
* e-folder-type-repository.c (folder_type_new): Free `icon_path'.
2000-05-18 Dan Winship <danw@helixcode.com>
* main.c (new_view_idle_cb): add development_warning (moved from
mail component)
2000-05-16 Ettore Perazzoli <ettore@helixcode.com>
* e-storage-set-view.c: Get rid of the `ICON_WIDTH' and
`ICON_HEIGHT' #defines.
(get_pixmap_and_mask_for_folder): Get the mini icon instead of the
big one. Use `E_SHELL_MINI_ICON_SIZE' instead of `ICON_WIDTH' and
`ICON_HEIGHT'.
* e-folder-type-repository.c: New member `mini_icon_pixbuf' in
`FolderType'.
(folder_type_new): Initialize `mini_icon_pixbuf' by loading the
mini icon if possible. If the mini icon is not found, resort to
the big one.
(folder_type_free): Unref the mini icon.
(e_folder_type_repository_get_icon_for_type): New arg @mini. If
true, return the mini icon instead of the standard one.
* e-shell-view.c (set_icon): Get the mini icon instead of the big
one by using `e_shell_get_icon_path's @try_mini arg.
* e-shell-constants.h: New file.
* e-shell-utils.c
(e_shell_get_icon_path): New arg @try_mini. If true, look for the
mini version [whose name ends in `-mini'].
* e-folder-type-repository.c
(folder_type_new): Free string returned by
`e_shell_get_icon_path()'.
2000-05-16 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c: New members `storage_set_view_box',
`shortcut_bar_box', `hpaned1_position', `hpaned2_position' in
`EShellViewPrivate'.
(init): Initialize them.
(setup_widgets): Add title bars to the tree and shortcut views.
(shortcuts_view_close_button_clicked_cb): New callback function.
(setup_widgets): Connect to the "close_button_clicked" signal of
the shortcut view's title bar.
(storage_set_view_close_button_clicked_cb): New callback function.
(setup_widgets): Connect to the "close_button_clicked" signal of
the storage set view's title bar.
(e_shell_view_show_shortcuts): New function.
(e_shell_view_show_folders): New function.
* e-shell-view.c: New members `hpaned1', `hpaned2' in
`EShellViewPrivate'.
(init): Initialize both to NULL.
(setup_widgets): Invert the parenting order for the GtkHPaneds and
store them into the private `hpaned' and `hpaned2' members.
* Makefile.am (evolution_LDADD): Link with `libemiscwidgets.a'.
2000-05-15 Ettore Perazzoli <ettore@helixcode.com>
* e-shortcuts.c
(load_shortcuts_into_view): Removed.
(e_shortcuts_new_view): Don't set up the shortcut bar manually
here anymore, and don't set the icon callback either. The
`EShortcutsView' object is now able to do this by itself.
* e-shortcuts-view.c
(icon_callback): Moved here from `e-shortcuts.c'.
(load_group): New function.
(load_all_shortcuts): New function.
(e_shortcuts_view_construct): Call it to load the shortcuts from
the `EShortcuts' object. Also, set `icon_callback' as the icon
callback.
* e-storage-set-view.c
(button_press_event): Add/remove grab with `gtk_grab_add' and
`gtk_grab_remove'.
(button_release_event): Call `gtk_grab_remove' when removing the
grab.
* e-shortcuts.c: New member `title_to_group' in
`EShortcutsPrivate'.
(init): Initialize here.
(destroy): Destroy here.
(unload_shortcuts): Destroy and recreate here.
(load_shortcuts): Avoid inserting multiple groups with the same
title, and insert the groups into the `title_to_group' hash table.
Also, avoid leaking the return value from `xmlNodeListGetString'.
(e_shortcuts_get_group_titles): New function.
(e_shortcuts_get_shortcuts_in_group): New function.
(e_shortcuts_get_storage_set): New function.
* e-storage-set-view.c
(e_storage_set_view_set_current_folder): Emit the
"folder_selected" signal.
* e-local-folder.c
(get_string_value): Return a `char *' to be deallocated by the
caller instead of a `const char *' that does not need to be
deallocated.
(construct_loading_metadata): Free values returned from
`get_string_value'.
2000-05-15 Ettore Perazzoli <ettore@helixcode.com>
* e-storage-set-view.c: New members `dragged_row_path',
`selected_row_path_before_click' in `EStorageSetViewPrivate'.
(init): Initialize them to NULL.
(motion_notify_event): Set `dragged_row_path' from
`selected_row_path'.
(button_press_event): Initialize `selected_row_path_before_click'
from `selected_row_path'.
(button_release_event): Set `selected_row_path_before_click' to
NULL.
(drag_end): Restore the current selection from
`selected_row_path_before_click'; then set both `dragged_row_path'
to NULL.
2000-05-15 Ettore Perazzoli <ettore@helixcode.com>
* e-storage-set-view.c: New members `in_drag' and `drag_button' in
`EStorageSetViewPrivate'. New static variables `drag_types',
`num_drag_types', `target_list'.
(class_init): Create the `target_list'.
(init): Initialize the private `in_drag' member to false.
Initialize the private `drag_button' member to zero.
(button_release_event): Set it to false.
(motion_notify_event): New function, implementation of
`GtkWidget::motion_notify_event'. If `in_drag' is false, set it
to true and set ourselves up as a drag source.
(button_press_event): New function, implementation of
`GtkWidget::button_press_event'. Set `drag_button' to the event's
button number and then chain to the implementation in the parent
class.
(drag_end): New function, implementation of `GtkWidget::drag_end'.
(drag_data_get): New function, implementation of
`GtkWidget::drag_data_get'.
(set_e_shortcut_selection): New function, helper for `drag_data_get'.
(set_uri_list_selection): New function, helper for `drag_data_get'.
(class_init): Install these method implementations.
* e-storage-set-view.c: New member `selected_row_path' in
`EStorageSetViewPrivate'.
(init): Initialize it to NULL.
(tree_select_row): Set it to the path of the selected row. Don't
emit "folder_selected" yet. Also, keep the grab.
(button_release_event): New function, implementation of
`GtkWidget::button_release_event'. If `selected_row_path' is not
NULL, emit the "folder_selected" signal with `selected_row_path'
as the parameter and then set `selected_row_path' to NULL again.
(class_init): Install `button_release_event'.
* e-storage-set-view.c: Made `ICON_WIDTH' and `ICON_HEIGHT' global
#defines.
(e_storage_set_view_construct): Set the row height to
`ICON_HEIGHT'. Alos, set the selection mode to
`GTK_SELECTION_BROWSE'.
2000-05-15 Iain Holmes <ih@csd.abdn.ac.uk>
* e-local-folder.c (get_string_value): Use the correct function to
get the node's contents.
* e-shortcuts.c (load_shortcuts): Same as above.
2000-05-14 Ettore Perazzoli <ettore@helixcode.com>
* e-folder-type-repository.c
(e_folder_type_repository_get_control_id_for_type): Protect
against non-existing types.
(e_folder_type_repository_get_icon_for_type): Likewise.
2000-05-14 Ettore Perazzoli <ettore@helixcode.com>
* e-storage-set-view.c
(folder_compare_cb): Callback comparison function for comparing
folders based on their names.
(insert_folders): Use it to sort the folder list before using it.
2000-05-14 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c
(setup_storages): Pass the pointer to the folder type repository.
(e_shell_construct): Initialize the folder type repository before
everything else.
* e-storage-set.c: New member `folder_type_repository' in
`EStorageSetPrivate'.
(init): Initialize it to NULL.
(destroy): Unref it.
(e_storage_set_construct): New arg @folder_type_repository.
Initialize the corresponding member in the private struct through
it.
(e_storage_set_new): New arg @folder_type_repository.
(e_storage_set_get_folder_type_repository): New function.
* e-shortcuts.c (icon_callback): Just use [the new version of]
`e_folder_type_repository_get_icon_for_type()' instead of loading
the image manually.
* e-folder-type-repository.c: New member `icon_pixbuf' in
`FolderType'.
(folder_type_new): Load the pixbuf.
(folder_type_free): Unref the pixbuf.
(e_folder_type_repository_get_icon_name_for_type): Renamed from
`e_folder_type_repository_get_icon_for_type'.
(e_folder_type_repository_get_icon_for_type): New function, now
returning a `GdkPixbuf *'.
* e-shortcuts.c
(icon_callback): Use `e_shell_get_icon_name()'.
* e-shell-view.c: New member `storage_set_view' in
`EShellViewPrivate'.
(init): Initialize it to NULL.
(e_shell_view_construct): Create an EStorageSetView for the
shell's EStorageSet and put it into a scrolled window. Also, put
the scrolled window into the EShellView with some
[temporary] GtkPaned action. Store the pointer to the
EStorageSetView to `priv->storage_set_view'.
(set_icon): Get an EShellView and an EFolder instead of an
EShellView and a URI. Also, don't leak.
(update_for_current_uir): New helper function. Call `set_icon'.
(show_error): Call it.
(folder_selected_cb): New function.
(setup_widgets): Connect it to the "folder_selected" signal of the
storage set view.
* e-storage-set-view.c: New file.
* e-storage-set-view.h: New file.
* e-shell-utils.c: New file.
* e-shell-utils.h: New file.
2000-05-10 Christopher James Lahey <clahey@helixcode.com>
* e-shell-view-menu.c: Added an about box.
2000-05-10 Christopher James Lahey <clahey@helixcode.com>
* e-shell-view.c: Set the icons when changing between components.
* main.c: Set the default icon. (The change in e-shell-view.c
doesn't work unless we do this.)
2000-05-09 Matt Loper <matt@helixcode.com>
* e-shell-view-menu.c (command_run_bugbuddy): New function; allows
users to submit a bug.
(command_run_bugbuddy): Implemented with jacob's patch.
2000-05-09 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c (e_shell_new_view): Display the specified @uri in the
view.
* e-shell-view.c (e_shell_view_construct): Removed arg @uri.
(e_shell_view_new): Likewise.
* main.c: New string constant `STARTUP_URI', specifying the URI to
show in the startup view.
(new_view_idle_cb): New callback function to create a new view for
`STARTUP_URI' in the idle loop. We need to do this in the idle
loop because the CORBA stuff cannot work until the loop starts
running.
(main): Set `new_view_idle_cb' up as the idle callback instead of
creating the view right away.
2000-05-09 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c (setup_storages): Woops. Don't free the path before
the warning message, as we need to print it.
2000-05-08 Ettore Perazzoli <ettore@helixcode.com>
* main.c (destroy_cb): New function.
(main): Connect it to the `destroy' signal on the shell.
2000-05-08 Ettore Perazzoli <ettore@helixcode.com>
* e-shortcuts.c (load_shortcuts): Const fix.
2000-05-08 Larry Ewing <lewing@helixcode.com>
* e-shortcuts.c (load_shortcuts_into_view): xmlFree the return
value of xmlGetProp.
2000-05-07 Ettore Perazzoli <ettore@helixcode.com>
* e-shortcuts-view.c (e_shortcuts_view_construct): Use
correct cast.
2000-05-07 Ettore Perazzoli <ettore@helixcode.com>
* main.c (main): Connect to "no_views_left", not "destroy".
* e-shell.c (view_destroy_cb): Grmpf.
2000-05-07 Ettore Perazzoli <ettore@helixcode.com>
* e-shell.c (e_shell_construct): Output a warning message if the
shortcut file is not found.
(setup_storages): Output a warning message if the local storage
cannot be initialized.
(destroy): Destroy all the views.
* e-shell-view.c
(e_shell_view_construct): Ref the shell.
* e-shortcuts-view.c
(e_shortcuts_view_construct): Ref the shortcuts.
* e-shell.c: Create the "no_views_left" signal. New member
`views' in `EShellPrivate'.
(init): Initialize `views' to NULL.
(view_destroy_cb): Destroy handler for a view: remove the view
from `views', and emit the "no_views_left" signal if this was the
last view.
(e_shell_new_view): Add the new view to `views' and connect the
"destroy" signal to `view_destroy_cb'.
(destroy): Destroy the views.
* e-shell.h: New signal "no_views_left".
* e-shell-view-menu.c (command_quit): New function, implementation
of the "quit" command.
* e-shell-view.c (e_shell_view_get_shell): New function.
* e-shell.c (e_shell_quit): New function.
* main.c (main): If it is not possible to create the shell for
some reason, pop up an error message.
(shell_destroy_cb): New function, signal handler for "destroy" on
the shell object.
(main): Connect it.
2000-05-06 Ettore Perazzoli <ettore@helixcode.com>
* e-shortcuts.c (destroy): Be safer about NULL objects.
* e-shell.c (destroy): Be safer about NULL objects.
* e-local-storage.c (load_folders): Use `readdir()', not
`readdir_r()'.
2000-05-06 Ettore Perazzoli <ettore@helixcode.com>
* main.c (init_corba) [! USING_OAF]: We have no options no
popt context.
2000-05-06 Ettore Perazzoli <ettore@helixcode.com>
* All files: Reorganized and redone a lot of the shell. New
features: internal URI namespace, extensible storage/folder
mechanism, configurable shortcuts.
2000-05-03 Damon Chaplin <damon@helixcode.com>
* e-shell-view.c (e_shell_view_new): turned the notebook border off.
The calendar looks better without it. If any of the views want a
border they should create it themselves, shouldn't they?
2000-05-04 Ettore Perazzoli <ettore@helixcode.com>
* e-shortcut.c (shell_icon_cb): Type of @url changed from `gchar
*' to `const gchar *'; new arg @data.
(e_shortcut_bar_view_new): Pass NULL as the closure value for
`e_shortcut_bar_set_icon_callback()'.
2000-05-02 Ettore Perazzoli <ettore@helixcode.com>
* e-folder-mail.c: Removed.
* e-folder-mail.h: Removed.
* eshell-types.h: Removed.
* e-folder.h: Don't #include "eshell-types.h".
2000-05-02 Ettore Perazzoli <ettore@helixcode.com>
* e-folder.h: Removed member `eservice' from `EFolder'.
* e-service.c: Removed.
* e-service.h: Removed.
2000-05-02 Matt Loper <matt@helixcode.com>
* Makefile.am: set G_LOG_DOMAIN.
2000-05-01 Dan Winship <danw@helixcode.com>
* e-shell-view.c (e_shell_view_set_view): Turn off control frame
autoactivation, so the toolbars work correctly. This may actually
be a bug in Bonobo, but we'll kludge around it here for now.
2000-04-27 Ettore Perazzoli <ettore@helixcode.com>
* e-shell-view.c: OAFized.
(get_view): If `bonobo_widget_new_control()' fails for the
calendar, don't try to get the property bag and stuff and thus
prevent a segfault.
* main.c
(corba_init): Removed Bonobo initialization. Implemented OAF
version for the case in which `USING_OAF' is #defined.
(init_bonob): New function.
(main): Call `init_bonobo()'.
2000-04-26 Matt Loper <matt@helixcode.com>
* e-shell-view.c (bonobo_widget_is_dead): Helper function to see
whether a bonobo widget is a zombie (ie the remote bonobo control
died).
(e_shell_view_set_view): Try to respawn dead widgets.
2000-04-25 Dan Winship <danw@helixcode.com>
* Makefile.am: include -I$(datadir)/idl in orbit-idl arguments so
that you can have bonobo installed in the same prefix as
evolution, when that isn't the same prefix is gnome-libs, which a
lot of people seem to be doing.
(CLEANFILES): add EVOLUTION_CORBA_GENERATED
2000-04-24 Christopher James Lahey <clahey@helixcode.com>
* idl/folder.idl: Made some functions syncronous that didn't need
to be asyncronous.
2000-04-24 Matt Loper <matt@helixcode.com>
* e-shell-view.h: Added hpaned and treeview widgets to
EShellView. Added e_shell_view_toggle_shortcut_bar() and
e_shell_view_toggle_treeview().
* e-shell-view.c (e_shell_view_setup_shortcut_display): Use EPaned
widget to house our shortcut bar.
(e_shell_view_toggle_shortcut_bar): New function; toggles whether
the shortcut bar is showing.
(e_shell_view_toggle_treeview): Same, for the treeview (NYI).
(e_shell_view_new): Put the notebook view in our EPaned widget.
* e-shell-view-menu.c (esv_cmd_toggle_shortcut_bar): New function;
toggles whether the shortcut bar is viewed.
(esv_cmd_toggle_treeview): Same, but with the treeview. Added
menuitems in the "view" menu to allow access to the above.
2000-04-19 Seth Alves <alves@hungry.com>
* e-shell-view.c (get_view): set calendar's uri with a property bag
2000-04-19 Christopher James Lahey <clahey@helixcode.com>
* idl/folder.idl: New idl file. Still unused.
2000-04-14 Christopher James Lahey <clahey@helixcode.com>
* e-shell-view.c: Made the left pane of the shell view not
autoresize.
2000-04-09 Matt Loper <matt@helixcode.com>
* e-shell-view.c (e_shell_view_setup): Set the default height
bigger, to 600, so that everything in the shortcut-bar shows up.
2000-04-07 Matt Loper <matt@helixcode.com>
* e-shell-view.c (destroy_folder_view): New function;
Bonobo_Unknown_unref's the controls that have the views in them.
(esv_destroy): Calls the above for each folder_view in the
hashtable.
(get_view): unref the ServiceRepository interface of the control
when we're done with it.
2000-04-06 Miguel de Icaza <miguel@gnu.org>
* shell/e-shortcut.c (shell_icon_cb): Append a slash here.
(shell_icons): Only list the filenames.
* shell/main.c (evolution_boot): Be less rude.
2000-04-06 Matt Loper <matt@helixcode.com>
* shell/main.c (evolution_boot): Make sure our data directory is
available with e_setup_base_dir ().
2000-04-06 Miguel de Icaza <miguel@gnu.org>
* shell/e-shortcut.c (shell_icon_cb): Load the icons from the
installation path, not form the GNOME-libs installation prefix.
(shell_icon_cb): Memory leak fix.
* shell/Makefile.am (imagesdir): Pass the EVOLUTION_IMAGES
installation directory here.
2000-04-05 Seth Alves <alves@hungry.com>
* shell/e-shell-view.c (get_view): hook up control:calendar
2000-03-31 Dan Winship <danw@helixcode.com>
* shell/e-shortcut.c (e_shortcut_bar_view_new, shell_icon_cb):
Update for shortcut bar changes.
* shell/e-folder.h: add E_FOLDER_SUMMARY
* shell/e-shell.c (e_shell_setup_default_folders): make the
"Today" icon be of type E_FOLDER_SUMMARY, not E_FOLDER_MAIL.
2000-03-30 Dan Winship <danw@helixcode.com>
* shell/e-shell-view.c (e_shell_view_set_view): Hold off on
deactivating the "outgoing" control until after setting up the
"incoming" control. That way if the new control takes a few
seconds to load, there won't be an ugly empty spot where the
toolbar used to be while the new control loads.
2000-03-29 Dan Winship <danw@helixcode.com>
* shell/e-shell-view.c (e_shell_view_set_view): Call
bonobo_control_frame_activate on the folder_view every time it
is displayed, and bonobo_control_frame_deactivate every time it is
hidden.
2000-03-25 Matt Loper <matt@helixcode.com>
* shell/e-shell-view.c (get_view): Move CORBA_Environment to
different scope.
2000-03-22 Matt Loper <matt@helixcode.com>
* shell/main.c (evolution_boot): gtk_signal_connect'ed "destroy"
to gtk_main_quit, so that the shell dies when you want it to.
* shell/e-shell-view.c (get_view): Reorganized, and added
assertions.
(e_shell_view_set_view): Added assertions.
2000-03-20 Matt Loper <matt@helixcode.com>
* shell/e-shell-view.h: New private field in EShellView added,
which contains the notebook and a hashtable of folders to views.
* shell/e-shell-view.c (e_shell_view_set_view): Instead of
creating a new control every time we set the view, we now keep our
controls in a notebook. This function now switches to the correct
notebook page, or creates a new page/control as necessary.
(e_shell_view_new): Creates and inserts the notebook into the
shell.
2000-03-13 Christopher James Lahey <clahey@helixcode.com>
* shell/e-shell-view.c: Added an E_FOLDER_CONTACTS section to the
get_view function.
2000-03-13 bertrand <bertrand@helixcode.com>
* shell/e-shell.c (EShell_register_service):
test implementation. Show the uri and the type
of service that has just been registered.
* shell/e-shell-view.c (get_view):
once we have the bonobo control widget,
disable the autoactivation and activate
the control frame.
(get_view): added a parameter to have
a reference to the EShellView.
(get_view): In the case of the mail component
use the Evolution_ServiceRepository to
give the component a reference to the
Shell server.
2000-03-12 bertrand <bertrand@helixcode.com>
* shell/e-shell-view.c (get_view): name change
* shell/e-folder.c (e_folder_get_folder_type): added the
get_e_folder_type function.
* shell/evolution-service-repository.c:
(evolution_service_repository_new): creates an
Evolution_ServiceRepository object.
(create_evolution_service_repository):
create the corresponding servant.
(evolution_service_repository_construct): set
the closure as well as the virtual functions.
2000-03-12 bertrand <bertrand@helixcode.com>
* shell/evolution-service-repository.c:
* shell/evolution-service-repository.h:
Implementation of the service repository interface
as a bonobo object.
* shell/evolution-service-repository.idl:
new file. Contains the definition for the service
repository interface.
* shell/Shell.idl: move the shell related stuff
here
2000-03-12 bertrand <bertrand@helixcode.com>
* shell/e-folder.h: add a field refering to a
service associated to the efolder. In the case of
distant folders, it is generally a server.
* shell/e-service.c: New class. Models a service.
A service is an object with an URI and a root folder.
It genreally reporesents a distant folder.
A service is generally a ressource shared amongst
several folders.
* shell/e-service.h:
2000-03-07 bertrand <bertrand@helixcode.com>
* shell/e-shell-shortcut.c (shortcut_bar_item_selected):
removed a test that prevented the standard menu
to be shown.
2000-03-01 Ettore Perazzoli <ettore@helixcode.com>
* shell/Makefile.am (INCLUDES): use `top_srcdir' instead of
`srcdir'. Also, add `$(top_srcdir)'. And put the srcdir includes
before everything else.
(evolution_LDADD): `libeutil.la', not `libeutil.a'.
2000-02-22 bertrand <Bertrand.Guiheneuf@aful.org>
* shell/Makefile.am (evolution_LDADD):
add libetext.a.
2000-02-08 Iain Holmes <ih@csd.abdn.ac.uk>
* shell/Makefile.am: Changed the order of the compilation, so the CORBA
stuff was generated before it was needed.
2000-01-15 Miguel de Icaza <miguel@gnu.org>
* shell/e-shell.c: Construct the default folders
* shell/e-shell-view.c (e_shell_view_new): Setup the main GnomeApp
application, load the shortcut, internal api.
* shell/e-folder.c (e_folder_get_type_name): Return description
here; Change of policy; We now know about all of the possible
types that can be displayed on Evolution.
2000-01-15 Miguel de Icaza <miguel@gnu.org>
* shell/e-folder.c: Renamed signal.
* widgets/shortcut-bar/e-shortcut-bar.c (e_shortcut_bar_add_item):
Use e_bar_set_item_data.
Drop item_url; Require image argument; Require user data
argument.
2000-01-05 Miguel de Icaza <miguel@gnu.org>
* shell/Makefile.am: New file.