Commit Graph

52 Commits

Author SHA1 Message Date
9d77b85ae3 changed to use a gtkdialog instead of a gnome one.
2002-11-27  Not Zed  <NotZed@Ximian.com>

        * main.c (show_development_warning): changed to use a gtkdialog
        instead of a gnome one.
        (warning_dialog_response_callback): clicked->response.

        * e-shell-folder-selection-dialog.c: Include gtk/gtkstock.h

        * e-shell-folder-creation-dialog.c: include gnome-dialog.h
        (dialog_response_cb): gtk_entry_get_text now returns const.  Dont
        free result.

        * e-setup.c: include gnome-messagebox.h

        * *.c: (re)run fix.sh over all, for e_notice changes & pick up
        some deprecated functions.

        * e-shell-shared-folder-picker-dialog.c
        (shared_folder_discovery_callback): reformat e_notice call for
        script.

        * e-shell-offline-sync.c
        (impl_SyncFolderProgressListener_reportFailure): Fix e_notice
        call, we weren't passing type in.

        * e-shell-folder-commands.c (xfer_result_callback): changed around
        slightly to save some processing & allow a script to run.
        (e_shell_command_rename_folder): reformat e_notice call to help script.
        Include gnome-messagebox.h

svn path=/trunk/; revision=18977
2002-12-02 03:23:57 +00:00
735297df13 Pass TRUE for arg allow_creation to e_shell_folder_selection_dialog_new().
* e-shell-folder-commands.c (e_shell_command_copy_folder): Pass
TRUE for arg allow_creation to
e_shell_folder_selection_dialog_new().
(e_shell_command_move_folder): Likewise.
* e-shell-view-menu.c (command_goto_folder): Likewise.
(command_new_shortcut): Likewise.
* e-shell.c (impl_Shell_selectUserFolder): Likewise.

* e-shell-folder-selection-dialog.c
(e_shell_folder_selection_dialog_set_allow_creation): Removed.
(e_shell_folder_selection_dialog_get_allow_creation): Removed.
(e_shell_folder_selection_dialog_new): New arg allow_creation.
(e_shell_folder_selection_dialog_construct): Likewise.  Also, do
set priv->shell.

* e-shell-folder-selection-dialog.h,
e-shell-folder-selection-dialog.c: Port to GtkDialog.

svn path=/trunk/; revision=18533
2002-11-04 18:32:55 +00:00
ede7fcb220 Changed all gtk_object_refs()/gtk_object_unrefs() into
* *.c, *.h: Changed all gtk_object_refs()/gtk_object_unrefs() into
g_object_refs()/g_object_unrefs() and all gtk_signal_connect_*()
into g_signal_connect_*().  [Except for some case where we have
gtk_signal_connect_full() or gtk_signal_connect_while_alive()
calls that cannot be trivially ported to use the g_signal_*
functions, we'll have to fix those later.]

* e-splash.c (impl_finalize): Finalize implementation, copied over
from impl_destroy.
(impl_destroy): Removed.
(class_init): Override finalize, not destroy.

* e-activity-handler.c: Ported from GtkObject to GObject.
* evolution-storage.c: Likewise.
* e-corba-shortcuts.c: Likewise.
* evolution-session.h: Likewise.
* evolution-config-control.c: Likewise.
* evolution-shell-component-dnd.c: Likewise.
* evolution-shell-component.c: Likewise.
* evolution-shell-view.c: Likewise.
* evolution-storage-set-view.c: Likewise.
* evolution-wizard.c: Likewise.

svn path=/trunk/; revision=18513
2002-11-03 22:08:16 +00:00
8691f8584f Renamed from GNOME_Evolution_Shell.oaf.in.
* GNOME_Evolution_Shell.server.in: Renamed from
GNOME_Evolution_Shell.oaf.in.

* Makefile.am: Port from OAF to bonobo-activation.
(INCLUDES): Define SYSCONFDIR, DATADIR, LIBDIR.

* main.c (main): Use gnome_program_init().

* e-corba-storage-registry.c (e_corba_storage_registry_new):
g_object_new(), not gtk_type_new().
(impl_finalize): New, ported over from destroy.
(destroy): Removed.
(class_init): Install finalize handler, not destroy handler, since
we are not a GtkObject anymore.

* e-corba-storage.c (e_corba_storage_new): g_object_new(), not
gtk_type_new().

* e-shell.c (class_init): Override finalize, not destroy.
(impl_finalize): Finalize implementation, basically the old
destroy renamed.
(e_shell_new): g_object_new(), not gtk_type_new().
(class_init): Use e_shell_marshal_NONE__INT for
line_status_changed instead of using an ENUM.
(e_shell_construct): Use g_signal_connect_object() instead of
gtk_signal_connect_while_alive().

* e-setup.c (e_setup): Do not unref local_folder if NULL.

* e-folder.c (init): Make not floating.
(e_folder_construct): No need to make it floating here anymore.

* e-shell.c (impl_Shell_selectUserFolder): For now don't set
dialog parent from xid.

* main.c (no_views_left_cb): Add missing GTK_SIGNAL_FUNC() cast.
(new_view_created_callback): Likewise.
(warning_dialog_clicked_callback): Update to use the
EConfigListener from the shell instead of bonobo-conf.
(show_development_warning): Likewise.
(upgrade_from_1_0_if_needed): BONOBO_EX_ID -> BONOBO_EX_REPOID.
(idle_cb): Use bonobo-activation and BONOBO_EX_REPOID().
(main): Cleaned up the various things that are unneeded in GNOME
2.
(upgrade_from_1_0_if_needed): Use EConfigListener.

* evolution-storage-set-view.h, evolution-storage-set-view.c:
BonoboXObjectified.

* e-storage.c (class_init): GLIB2-ified and made to use
e-shell-marshal.h.
(ES_CLASS): Use GTK_OBJECT_GET_CLASS().
(e_storage_new_folder): Added missing GTK_SIGNAL_FUNC() prototype.

* e-storage-set.c (class_init): GLIB2-ified and made to use
e-shell-marshal.h.

* e-storage-set-view.c (popup_folder_menu): For now, do not add
the pop-up since we lack bonobo_ui_container_get_win() and I am
not sure how to work around it.
(popup_folder_menu): Pass self as the for_widget arg to
gnome_popup_menu_do_popup_modal().
(class_init): GLIB2-ified, and got to use e-shell-marshal.h.
(marshal_NONE__GDKDRAGCONTEXT_STRING_STRING_STRING): Removed.
(impl_tree_drag_data_get): Don't set the selection for now -- we
have to fix the CORBA target stuff to match GTK 2.
(e_storage_set_view_construct): Pass NULL as the opt_ev arg to
bonobo_ui_component_set_container().

* e-splash.c: #include <libgnomecanvas/gnome-canvas-pixbuf.h>
instead of <gdk-pixbuf/gnome-canvas-pixbuf.h>.
(e_splash_new): Pass NULL as the error arg to
gdk_pixbuf_new_from_file().

* e-shortcuts.c (class_init): GLIB2-ified.  Also use the
e-shell-marshal marshallers.
(e_shortcuts_new_view): Add missing GTK_SIGNAL_FUNC() cast.

* e-shortcuts-view.c: Use GTK_STOCK_* stuff instead of
GNOME_STOCK_* stuff.
(pop_up_right_click_menu_for_group): Pass self as the for_widget
arg to gnome_popup_menu_do_popup_modal().
(pop_up_right_click_menu_for_shortcut): Likewise.
(class_init): GLIB2-ified.

* e-shell.c: Do not #include <gal/util/e-unicode-i18n.h> or
#include <libgnome/gnome-defs.h>.
(set_interactive): Use BONOBO_EX_REPOID().
(setup_local_storage): Use _() not U_().
(destroy): Use gtk_widget_destroy() instead of
gtk_object_destroy() on priv->settings_dialog.
(class_init): GLIB2-ized.
(init): Initialize config_listener member.
(get_icon_path_for_component_info): Port to bonobo-activation from
OAF.
(setup_components): Likewise.
(destroy): Likewise.
(e_shell_construct): Use e_setup_check_config(), not
e_setup_check_db ().  Use the e_config_listener instead of
bonobo-conf.
(save_settings_for_views): Likewise.
(save_misc_settings): Likewise.
(e_shell_restore_from_settings): Likewise.
(parse_default_uri): Likewise.
(e_shell_component_maybe_crashed): Pass NULL for opt_ev arg to
bonobo_unkown_ping()
(e_shell_component_maybe_crashed): Use
bonobo_engine_deregister_dead_components() instead of
bonobo_window_deregister_component_by_ref() which is no more.
(e_shell_send_receive): BONOBO_EX_REPOID() instead of
BONOBO_EX_ID().
(e_shell_get_config_listener): Return the config_listener.

* e-shell-view.c (find_inbox_in_storage): Use _() instead of U_().
(load_images): Pass NULL as the error arg to
gdk_pixbuf_new_from_file().
(load_images): Likewise.
(find_inbox_in_storage): Work around the lack of
g_utf8_strcasecmp() in glib-2.0.
(class_init): GLIB2-ified.  Also, use the marshallers in
e-shell-marshal.h.
(pop_up_folder_bar): Use gtk_window_move()/gtk_widget_show()
instead gtk_widget_popup().
(unmerge_on_error): Work around the death of
bonobo_ui_component_get_win() and
bonobo_window_deregister_component_by_ref().
(e_shell_view_construct): Pass NULL as the uic arg to
bonobo_window_construct().  Add missing GTK_SIGNAL_FUNC() cast.
Match the new BonoboWindow behavior wrt the UIContainer and the
new opt_ev args.
(display_uri): Use bonobo_ui_engine_freeze() and
bonobo_ui_engine_thaw() since bonobo_window_freeze() and
bonobo_window_thaw() got axed [sigh].
(e_shell_view_save_settings): Use EConfigListener.
(e_shell_view_load_settings): Likewise.
(get_view_for_uri): Use bonobo_widget_new_control_from_objref()
instead of e_bonobo_widget_new_control_from_objref().

* e-shell-view-menu.c (command_help_faq): Pass NULL for the error
arg to gnome_url_show().
(command_about_box): Use GtkDialog instead of a GtkWindow of a
type GTK_WINDOW_DIALOG [which does not exist anymore].
(command_xml_dump): Removed.
(menu_do_misc): Do not add the corresponding verb.

* e-shell-user-creatable-items-handler.c (execute_verb): Use
BONOBO_EX_REPOID().

* e-shell-startup-wizard.c: Remove id member from SWData.  Replace
member db with config_listener.
(e_shell_startup_wizard_create): Initialize config_listener.
(make_mail_dialog_pages): Do not set the listener id here.
(druid_event_notify_cb): Pass FALSE as the help_sensitive arg to
gnome_druid_set_buttons_sensitive().
(e_shell_startup_wizard_create): Likewise.
(make_mail_dialog_pages): Use bonobo-activation instead of OAF.
(get_intelligent_importers): Likewise.
(prepare_importer_page): Likewise.
(start_importers): Do nothing here for now.
(finish_func): Constify local variable displayname.
(finish_func): Updated to use the config_listener instead of the
bono-conf db.
(prepare_importer_page): Do not actually run the importer yet.
(e_shell_startup_wizard_create): Pass NULL as the domain arg to
glade_xml_new().  Use the config_listener.

* e-shell-shared-folder-picker-dialog.c (user_clicked):
BONOBO_EX_REPOID() instead of BONOBO_EX_ID().
(setup_name_selector): Likewise.
(setup_name_selector): Use bonobo-activation.
(show_dialog): Pass NULL as the domain arg to glade_xml_new().
(setup_name_selector): Add a missing GTK_SIGNAL_FUNC() cast.

* e-shell-settings-dialog.c: #include
<bonobo-activation/bonobo-activation.h>.  Use
Bonobo_ActivationProperty instead of OAF_Property.
(set_dialog_size): Use gtk_style_get_font() to get the font from
the widget->style.
(load_pages): Converted to use bonobo-activation instead of OAF.
Pass NULL as the error arg to gdk_pixbuf_new_from_file().

* e-shell-offline-sync.c (sync_folder): BONOBO_EX_REPOID(), not
BONOBO_EX_ID().
(e_shell_offline_sync_all_folders): For now, avoid doing anything
[see changes to e-shell-config-offline.c below].
(setup_progress_listener): #if 0 for now.
(setup_dialog): Likewise.
(sync_folder): Likewise.
(cleanup): Likewise.
(progress_listener_servant_free): Likewise.
(progress_listener_servant_new): Likewise.
(impl_SyncFolderProgressListener_updateProgress): Likewise.
(impl_SyncFolderProgressListener_reportSuccess): Likewise.
(impl_SyncFolderProgressListener_reportFailure): Likewise.
(progress_dialog_close_callback): Likewise.
(progress_dialog_clicked_callback): Likewise.

* e-shell-offline-handler.c (prepare_for_offline): Use
BONOBO_EX_REPOID().
(pop_up_confirmation_dialog): Pass NULL as the domain arg to
glade_xml_new().
(class_init): GLIB2-ified.

* Makefile.am: Do not compile e-shell-importer.c,
e-shell-importer.h for now.

* e-shell-folder-title-bar.c (get_max_clipped_label_width): Use
gtk_style_get_font() to retrieve the font.
(class_init): GLIB2-ified.
(e_shell_folder_title_bar_construct): Get {x,y}thickness from
widget->style, not from widget->style->klass.

* e-shell-folder-selection-dialog.c: #include <string.h>,
<gtk/gtklabel.h> and <gtk/gtksignal.h>.
(class_init): GLIB2-ified.

* e-shell-folder-creation-dialog.c: No <libgnome/gnome-defs.h>,
add some GTK includes.
(e_shell_show_folder_creation_dialog): Pass NULL as the domain arg
to glade_xml_new().  Added missing GTK_SIGNAL_FUNC() cast.

* e-shell-folder-commands.c: Do not #include
<libgnomeui/gnome-stock.h> and #include
<bonobo-conf/Bonobo_Config.h>.

* e-shell-config-default-folders.c: Replace member db in
EvolutionDefaultFolderConfig with config_listener.
(e_shell_config_default_folders_create_widget): Init here.
(config_control_destroy_cb): Unref here.
(config_control_apply_cb): Use EConfigListener instead of
BonoboConf.
(setup_folder_selector): Likewise.
(e_shell_config_default_folders_create_widget): Pass NULL as the
domain arg to glade_xml_new().

* e-shell-config-offline.c (config_control_apply_callback): For
now, do not change the configuration.  [Needs to be ported to
EConfigListener or something, but we were storing a sequence using
typecodes here and there is no trivial way to do that right now.]
(init_storage_set_view_status_from_config): Likewise, do not
retrieve the configuration here.

svn path=/trunk/; revision=18510
2002-11-03 16:43:18 +00:00
45fd176750 Calls e_shell_command_remove_shared_folder. (file_verbs): Set up
* e-shell-view-menu.c (command_remove_other_users_folder): Calls
	e_shell_command_remove_shared_folder.
	(file_verbs): Set up command_remove_other_users_folder.

	* e-shell-folder-commands.c
	(e_shell_command_remove_shared_folder): New. Calls
	e_storage_set_async_remove_shared_folder with a callback to pop up
	an error dialog if it fails.

	* e-storage-set.c (e_storage_set_async_remove_shared_folder):
	Implement. Mostly like async_remove_folder.

	* e-storage.c (e_storage_supports_shared_folders,
	e_storage_async_discover_shared_folder,
	e_storage_async_remove_shared_folder): New methods. Default
	implementations return FALSE, NOTIMPLEMENTED, and NOTIMPLEMENTED.

	* e-corba-storage.c (supports_shared_folders,
	async_discover_shared_folder, async_remove_shared_folder):
	Implement using CORBA.

	* Evolution-Storage.idl: add Storage_asyncRemoveSharedFolder

	* e-shell-shared-folder-picker-dialog.c: Remove all the CORBA
	stuff from here and use the new EStorage methods.
	(setup_server_option_menu): Use e_storage_supports_shared_folders.
	(discover_folder): Use e_storage_async_discover_shared_folder.

	* evolution-storage.c (impl_Storage_asyncRemoveSharedFolder):
	Implement this by emitting a REMOVE_SHARED_FOLDER signal.
	(impl_Storage_asyncDiscoverSharedFolder): Make the
	DISCOVER_SHARED_FOLDER signal put the Bonobo_Listener first like
	all the other signals do.
	(class_init): Set up REMOVE_SHARED_FOLDER signal.

svn path=/trunk/; revision=18265
2002-09-30 18:41:05 +00:00
6a5efeb0f9 [Finish fixing #11645.]
* e-shell-folder-commands.c (xfer_result_callback): Don't update
the shortcuts here anymore since now the shell takes care of it.

* e-shell.c (storage_set_moved_folder_callback): New callback for
EStorageSetView::folder_moved; update the shortcuts.
(e_shell_construct): Connect.

* e-storage-set.c: Renamed StorageConverterCallbackData to
StorageCallbackData.  New members destination_folder,
source_folder, operation in it.
(class_init): Install "moved_folder" signal.
(storage_callback_data_new): Renamed from
storage_converter_callback_data_new.
(storage_callback_data_free): New.
(storage_callback): Renamed from storage_callback_converter.  Use
storage_callback_data_free().
(e_storage_set_async_create_folder): Updated to use the
storage_callback and storage_callback_data_new().
(e_storage_set_async_remove_folder): Likewise.
(e_storage_set_async_xfer_folder): Likewise.

* e-storage-set.h: New signal "moved_folder".

svn path=/trunk/; revision=18216
2002-09-25 18:06:29 +00:00
efa2ba8ab0 Placate compiler.
* e-shell-view-menu.c (launch_pilot_settings): Placate compiler.

* e-shell-folder-commands.c (xfer_result_callback): When
FOLDER_COMMAND_MOVE, update the shortcuts by using
e_shortcuts_update_shortcuts_for_changed_uri().

* e-shortcuts.c (e_shortcuts_update_shortcuts_for_changed_uri):
New.

svn path=/trunk/; revision=18206
2002-09-24 21:01:04 +00:00
4139f5b3cc If the custom_icon_name is not NULL, return the pixbuf for it.
* e-shortcuts-view-model.c (get_icon_for_item): If the
custom_icon_name is not NULL, return the pixbuf for it.

* e-storage-set-view.c: #include "e-icon-factory.h".

* e-shortcuts-view.c (impl_shortcut_dropped): Pass the
custom_icon_name.
(get_shortcut_info): New arg @custom_icon_name_return.
(rename_shortcut_cb): Pass the custom_icon_name here.

* e-shell-view-menu.c (new_shortcut_dialog_folder_selected_cb):
Pass the custom_icon_name for the folder's shortcut.

* e-shell-folder-commands.c (e_shell_command_add_to_shortcut_bar):
Pass the custom_icon_name for the folder's shortcut.

* e-corba-shortcuts.c (impl_add): Use the customIconName member in
struct ::Shortcuts::Shortcut.
(shorcut_list_to_corba): Set the customIconName member on the
returned shortcuts.
(impl_get): Likewise.

* Evolution-Shortcuts.idl: New member customIconName in struct
Shortcut.

* e-shortcuts.c (shortcut_item_new): New arg @custom_icon_name;
initialize the member in EShortcutItem from it.
(shortcut_item_update): New arg @custom_icon_name; set the
custom_icon_name from it.  Also remove some braindeadness from
this code.
(update_shortcut_and_emit_signal): New arg @custom_icon_name.
(load_shortcuts): Load the custom icon name from the XML
[eg. <item name="foo" type="mail" icon="inbox">].
(save_shortcuts): Save the custom icon name in the XML.
(e_shortcuts_add_shortcut): New arg @custom_icon_name.
(update_shortcuts_by_path): Pass the custom_icon_name to
update_shortcut_and_emit_signal().
(e_shortcuts_update_shortcut): New arg @custom_icon_name; pass it
to update_shortcut_and_emit_signal().
(e_shortcuts_add_default_group): Pass "inbox" as the
custom_icon_name for the inbox shortcut, and NULL for the other
shortcuts.

* e-shortcuts.h: New member custom_icon_name in EShortcutItem.

svn path=/trunk/; revision=17394
2002-07-09 19:49:15 +00:00
0886e86bdf Make a little bit prettier. Default to "Delete", not "Cancel".
* e-shell-folder-commands.c (delete_dialog): Make a little bit
prettier.  Default to "Delete", not "Cancel".

svn path=/trunk/; revision=16992
2002-05-23 20:59:05 +00:00
1fb21d1f78 No more @default_type arg to e_shell_folder_selection_dialog_new().
* e-shell.c (impl_Shell_selectUserFolder): No more @default_type
arg to e_shell_folder_selection_dialog_new().

* e-shell-view-menu.c (command_goto_folder): No more @default_type
arg to e_shell_folder_selection_dialog_new().
(command_new_shortcut): Likewise.

* e-shell-importer.c (import_druid_finish): No more @default_type
arg to e_shell_folder_selection_dialog_new().

* e-shell-folder-commands.c (e_shell_command_move_folder): No more
@default_type arg to e_shell_folder_selection_dialog_new().
(e_shell_command_copy_folder): Likewise.

* e-shell-folder-selection-dialog.c: Removed default_type member
in EShellFolderSelectionDialogPrivate.
(e_shell_folder_selection_dialog_new): Removed @default_type arg.
(e_shell_folder_selection_dialog_construct): Likewise.
(impl_clicked): Just pass the first of the allowed types to
e_shell_show_folder_creation_dialog() for the default type.

* evolution-shell-client.c (user_select_folder): No more
@default_type arg to the ::userSelectFolder CORBA method.

* Evolution-Shell.idl (selectUserFolder): Remove arg
@default_type.

svn path=/trunk/; revision=16983
2002-05-22 23:51:38 +00:00
dfbbbf2baf Use e_folder_get_name. Don't assume it's the same as the last path
* e-shell-folder-commands.c (e_shell_command_rename_folder): Use
	e_folder_get_name. Don't assume it's the same as the last path
	element.

svn path=/trunk/; revision=16227
2002-03-22 16:44:23 +00:00
4be61235ce Make old_name_locale non-const to placate a compiler warning.
* e-shell-folder-commands.c (e_shell_command_rename_folder): Make
old_name_locale non-const to placate a compiler warning.
(get_corba_null_value): Likewise.

* e-activity-handler.c (report_task_event): `#if 0' out.

svn path=/trunk/; revision=16008
2002-03-10 03:16:46 +00:00
0ccb79c8ca [Fix #20234, Deleting Folder gratuitiously causes /local to open.]
2002-03-04  Ettore Perazzoli  <ettore@ximian.com>

	[Fix #20234, Deleting Folder gratuitiously causes /local to open.]

	* e-shell-view.c (find_inbox_in_storage): New helper function to
	heuristically find an Inbox folder.
	(handle_current_folder_removed): New function to handle the
	removal of the currently displayed folder in a slightly smarter
	way than before.  It tries to display the parent folder of the
	folder that got deleted and, if not possible, the Inbox in the
	same storage.  If neither of this is possible, it displays the
	default local Inbox.  [It still doesn't handle the case where you
	have no Inbox gracefully, but that can come later.]
	(storage_set_removed_folder_callback): Call
	`handle_current_folder_removed'.

2002-03-04  Ettore Perazzoli  <ettore@ximian.com>

	[Fix #20237, Shell silently drops xfer_folder errors.]

	* e-shell-folder-commands.c (xfer_result_callback): Display an
	error message if the operation failed.

svn path=/trunk/; revision=15898
2002-03-04 16:53:45 +00:00
b82997411c Convert folder name to locale's encoding before using it as part of the
2001-11-15  Zbigniew Chyla  <cyba@gnome.pl>

	* e-shell-folder-commands.c (e_shell_command_rename_folder): Convert
	folder name to locale's encoding before using it as part of the prompt.

svn path=/trunk/; revision=14849
2001-12-03 17:15:12 +00:00
a40ab7c842 Fix the license text to make sense.
svn path=/trunk/; revision=14192
2001-10-27 01:09:28 +00:00
067aaf149e Update the licensing information to require version 2 of the GPL
explicitly.

svn path=/trunk/; revision=14186
2001-10-26 23:53:35 +00:00
12333f4dff Don't allow invalid folder names. [#12027]
* e-shell-folder-commands.c (e_shell_command_rename_folder): Don't
allow invalid folder names.  [#12027]

* e-shell-folder-creation-dialog.c (entry_name_is_valid): Removed.
(dialog_clicked_cb): Use `e_shell_folder_name_is_valid()' instead.

* e-shell-utils.c (e_shell_folder_name_is_valid): New.  Sorry I18N
people, it breaks the string freeze slighty.

* e-component-registry.c (component_free): Add a cast.
(e_component_registry_restart_component): Argh, use the
corba_objref properly in calling `wait_for_corba_object_to_die()'.

svn path=/trunk/; revision=14152
2001-10-26 18:21:57 +00:00
abb1c1895a Get the path and the shell view instead. (rename_callback_data_free):
* e-shell-folder-commands.c (rename_callback_data_new): Get the
path and the shell view instead.
(rename_callback_data_free): Updated accordingly.
(rename_cb): Set the name on the folder based on the path, not the
actual object [as the old object gets unreffed -- of course].

svn path=/trunk/; revision=13969
2001-10-24 00:24:21 +00:00
d998431a1e New. (rename_callback_data_free): New. (rename_cb): Rename the folder
* e-shell-folder-commands.c (rename_callback_data_new): New.
(rename_callback_data_free): New.
(rename_cb): Rename the folder here.
(e_shell_command_rename_folder): Don't rename the EFolder here.

svn path=/trunk/; revision=13967
2001-10-23 23:38:58 +00:00
9b86a51681 [Fix #7643, Starting new view doesn't honor "view" settings.]
* e-shell-view-menu.c (command_open_folder_in_new_window): Pass
the parent @shell_view as the @template_view arg to
`e_shell_create_view()'

* e-shell-view.c (activate_shortcut_cb): Pass the _view as the
@template_view arg to `e_shell_create_view()'.

* e-shell-folder-commands.c
(e_shell_command_open_folder_in_other_window): Pass the parent
@shell_view as the @template_view arg to `e_shell_create_view()'.

* e-shell.c (e_shell_create_view): New arg @template_view.
(impl_Shell_createNewView): Pass %NULL as @template_view when
calling it.
(e_shell_restore_from_settings): Likewise.

svn path=/trunk/; revision=13618
2001-10-12 06:29:09 +00:00
e7ea619548 Don't free the folder_command_data here. It is supposed to be freed in the
* e-shell-folder-commands.c
(folder_selection_dialog_folder_selected_callback): Don't free the
folder_command_data here.  It is supposed to be freed in the async
callback.  The leak that Dan supposedly fixed was probably only
due to the fact that the component that was supposed to perform
the xfer didn't report a result.  Now that xfer actually works, it
was triggering the crash instead.  [Fixes #9769.]

svn path=/trunk/; revision=13615
2001-10-12 04:21:19 +00:00
df580510c9 New, callback for the ::removed_folder signal on the shell's EStorageSet.
* e-shell-view.c (storage_set_removed_folder_callback): New,
callback for the ::removed_folder signal on the shell's
EStorageSet.
(e_shell_view_construct): Connect.
(e_shell_view_remove_control_for_uri): Removed.

* e-shell-folder-commands.c
(folder_selection_dialog_folder_selected_callback): Don't call
`e_shell_view_remove_control_for_uri()'.
(e_shell_command_delete_folder): Not here either.  And don't
display the default URI either.

svn path=/trunk/; revision=13305
2001-10-02 18:21:01 +00:00
e6ab5554d4 Allow callers to set the default type of folder to be created.
svn path=/trunk/; revision=13220
2001-09-28 18:58:17 +00:00
71d817f832 Change the name on the EFolder object too.
* e-shell-folder-commands.c (e_shell_command_rename_folder):
Change the name on the EFolder object too.

svn path=/trunk/; revision=13134
2001-09-25 23:26:33 +00:00
58755d5604 [Implemented the "Rename" command. Warning, it doesn't quite work
yet, as there seems to be something wrong still.]

* e-storage.c (e_storage_async_xfer_folder): Ooops.  Make the
check for CANTMOVETODESCENDANT really work.

* e-storage-set-view.c (tree_drag_data_received): Pass the
EStorageSetView as the data for the async_xfer function.
(folder_xfer_callback): Display an error dialog if something goes
wrong.

* e-shell-view-menu.c (command_rename_folder): Enable again.

* e-shell-folder-commands.c (e_shell_command_rename_folder):
Re-implemented.
(delete_dialog): Use double quotes instead of single quotes around
the folder name, for consistency with the other dialogs.

svn path=/trunk/; revision=13131
2001-09-25 23:01:33 +00:00
769e117e90 New helper function. (command_move_folder): Pass the @folder_path argument
* e-shell-view-menu.c (get_path_for_folder_op): New helper
function.
(command_move_folder): Pass the @folder_path argument to
`e_shell_command_move_folder' by using it.
(command_copy_folder): Pass the @folder_path argument to
`e_shell_command_copy_folder' by using it.
(command_delete_folder): Pass the @folder_path argument to
`e_shell_command_delete_folder()' by using it.
(command_add_folder_to_shortcut_bar): Pass the @folder_path
argument to `e_shell_command_add_to_shortcut_bar()' by using it.
(command_create_folder): Pass the @parent_folder_path argument to
`e_shell_command_create_new_folder()' by using it.
(command_new_folder): Use `get_path_for_folder_op()'.

* e-shell-folder-commands.c (e_shell_command_add_to_shortcut_bar):
New arg @folder_path.
(e_shell_command_copy_folder): New arg @folder_path.
(e_shell_command_move_folder): New arg @folder_path.
(e_shell_command_open_folder_in_other_window): New arg @folder_path.
(e_shell_command_create_new_folder): New arg @parent_folder_path.
(e_shell_command_delete_folder): New arg @folder_path.

* e-shell-view.c (e_shell_view_get_folder_bar_right_click_path): New.

* e-storage-set-view.c: New member `right_click_row_path'.
(init): Init to NULL.
(destroy): Free.
(right_click): Set.
(popup_folder_menu): Use `gnome_popup_menu_do_popup_modal()' so we
are stuck in here until the menu disappears.  After that, destroy
the menu and  call `e_tree_right_click_up()'.
(e_storage_set_view_get_right_click_path): New.

svn path=/trunk/; revision=13124
2001-09-25 21:27:00 +00:00
638ad0ba0b [Fix #5990, Remembering Evolution window geometry.]
* e-shell.c (impl_Shell_createNewView): gtk_widget_show() the new
view returned by `e_shell_create_view()'.
(e_shell_restore_from_settings): Same here, after loading the
settings.

* e-shell-view.c (activate_shortcut_cb): gtk_widget_show() the new
view returned by `e_shell_create_view()'.

* e-shell-view-menu.c (command_open_folder_in_new_window):
gtk_widget_show() the view returned by `e_shell_create_view()'.

* e-shell-folder-commands.c
(e_shell_command_open_folder_in_other_window): gtk_widget_show()
the view returned by `e_shell_create_view()'.

* e-shell.c (e_shell_create_view): Don't show the view
automatically anymore.

* e-shell-view.c (e_shell_view_save_settings): Save the width and
height of the window.
(e_shell_view_load_settings): Restore the width and the height and
gtk_window_set_default_size() based on them.

svn path=/trunk/; revision=12816
2001-09-13 23:46:03 +00:00
afdc8acc65 Purify run. All small leaks.
* e-shell-folder-commands.c
	(folder_selection_dialog_folder_selected_callback): Free the
	folder_command_data when destroying the dialog.

	* e-local-storage.c (remove_folder): Free physical_uri if we
	allocated it.

	* e-shortcuts-view.c (pop_up_right_click_menu_for_group): Unref
	the popup menu, don't destroy it.
	(destroy_group_cb): Free the question string.
	(rename_group_cb): Free the new_name.

	* e-shell-importer.c (create_plugin_menu): Free the list of
	importers.
	(get_iid_for_filetype): Likewise.
	(import_druid_finish): #ifdef out some g_strdups that are only
	used by other #ifdef'ed-out code.

	* e-shell-view.c: Make sure the keys in the uri_to_view hash get
	freed.

	* e-shell-folder-title-bar.c (set_title_bar_label_style): Unref
	the style after setting it on the widget.

	* e-shell-offline-handler.c (impl_destroy): free priv.

	* e-storage-set-view.c (tree_drag_data_received): Make sure
	target_type always gets freed.

	* e-shell-folder-creation-dialog.c (add_folder_types): Don't leak
	the type names.

svn path=/trunk/; revision=12715
2001-09-09 18:24:15 +00:00
bc21d949ca [Fix #6971, Default folder should be the Summary.]
* main.c (idle_cb): s/DEFAULT_URI/E_SHELL_VIEW_DEFAULT_URI/.

* e-shell.c (e_shell_create_view):
s/DEFAULT_URI/E_SHELL_VIEW_DEFAULT_URI/.

* e-shell-view.c (socket_destroy_cb):
s/DEFAULT_URI/E_SHELL_VIEW_DEFAULT_URI/.
(e_shell_view_save_settings): Likewise.

* e-shell-folder-commands.c (e_shell_command_delete_folder):
s/DEFAULT_URI/E_SHELL_VIEW_DEFAULT_URI/.

* e-shell-view.h (DEFAULT_URI): Rename to
`E_SHELL_VIEW_DEFAULT_URI'.  Change from "evolution:/local/Inbox"
to be "evolution:/summary".

svn path=/trunk/; revision=12618
2001-09-05 00:10:03 +00:00
3b17294f86 Remove the folder from the EvolutionStorage as well as the EStorage.
2001-08-30  Peter Williams  <peterw@ximian.com>

	* e-local-storage.c (async_xfer_folder_complete): Remove the folder from
	the EvolutionStorage as well as the EStorage.

2001-08-29  Peter Williams  <peterw@ximian.com>

	* e-storage-set-view.c (etree_node_destroy_func): Only call
	remove_node_from_hash if it's not the root node.
	(removed_storage_cb): Don't remove the node from the hash here,
	because it will be removed in the node_destroyed callback.
	(removed_folder_cb): Same.

	* e-shell-view.c (e_shell_view_remove_control_for_uri): Disconnect
	from the destroy signal so as not to confuse ourselves. Also, the
	page remove in the notebook destroys the control and the socket, so don't
	do that explicitly.

	* e-shell-folder-commands.c
	(folder_selection_dialog_folder_selected_callback): Remove the control
	for the source view if we're moving.

svn path=/trunk/; revision=12578
2001-09-04 15:30:13 +00:00
b6463ef46a Actually return if the folder is being moved into one of its descendants.
* e-shell-folder-commands.c
(folder_selection_dialog_folder_selected_callback): Actually
return if the folder is being moved into one of its descendants.

svn path=/trunk/; revision=12395
2001-08-22 21:29:31 +00:00
2c27394b7f Remove unused variable @folder.
2001-08-13  Jason Leach  <jleach@ximian.com>

	* e-local-storage.c (remove_folder_directory): Remove unused
	variable @folder.

	* e-shell-folder-commands.c (e_shell_command_add_to_shortcut_bar):
	Give icons to shortcuts added via Right-click->Add to Shortcut
	Bar.

svn path=/trunk/; revision=11944
2001-08-13 17:59:52 +00:00
51f77f649b [Finally! Fix #413, "Support for stock folders", and #786, "i18n:
default folder names are not translated".]

* e-local-storage.c (setup_folder_as_stock): New helper function.
(setup_stock_folders): Use it to set the default folders as
"stock" folders.  This will give them a translated name and also
make them unmodifiable.
(load_all_folders): Call `setup_stock_folders()' here.

* e-shell-folder-commands.c (delete_cb): Display an error dialog
if the deletion fails.
(e_shell_command_delete_folder): Pass the shell view to the delete
callback.

* e-storage.c (e_storage_result_to_string): Add a string for
`E_STORAGE_CANTCHANGESTOCKFOLDER' as well.

* e-local-storage.c (remove_folder): Don't allow a stock folder to
be removed.
(impl_async_xfer_folder): Don't allow a stock folder to be moved.

* e-corba-storage.c (async_remove_folder): Don't allow a stock
folder to be removed.

* e-storage.h: New enum value `E_STORAGE_CANTCHANGESTOCKFOLDER' in
`EStorageResult'.

* e-folder.c: Make member `self_highlight' a :1 int.  New :1 int
member `is_stock'.
(init): Init `is_stock' to %FALSE.
(e_folder_set_is_stock): New.
(e_folder_get_is_stock): New.

* e-local-storage.c (bonobo_interface_update_folder_cb): For now,
don't set the display name.

svn path=/trunk/; revision=11931
2001-08-12 14:00:02 +00:00
0ea43e6ee7 `#if 0'ed out. (rename_cb): Likewise.
* e-shell-folder-commands.c (rename_clicked): `#if 0'ed out.
(rename_cb): Likewise.

* evolution-shell-component.c (destroy): Fixed a confusion between
GList and GSList.

svn path=/trunk/; revision=11876
2001-08-10 09:13:52 +00:00
02ead26ac7 build fix
svn path=/trunk/; revision=11637
2001-08-03 23:27:58 +00:00
385ba85d42 [Removing Evolution::LocalStorage interface, abstracting the unread counts
2001-08-03  Jason Leach  <jleach@ximian.com>

        [Removing Evolution::LocalStorage interface, abstracting the
        unread counts from a folder's name, also abstract unread counts
        from a shortcut's name.  Fixes #4489 and #5497]

        * e-shortcuts.c (shortcut_item_new): Take an unread_count argument
        now.
        (shortcut_item_update): Ditto.

        * e-shortcuts-view-model.c (get_name_with_unread): Get a string
        containing a shortcut name and it's unread, because these are
        abstracted now.
        (load_group_into_model): Use the above function to make shortcuts
        that have unread counts.

        * e-storage-set-view.c (update_folder_with_unread_hash): Keep a
        hash of folder names with unread counts, because the folder name
        and it's unread count are to be separated, only the ETree is
        supposed to present it as one string.

        * e-shell-view.c: Renamed EShellView::view_title_bar to
        folder_title_bar, to closer match the

        * e-shell-view-menu.c (new_shortcut_dialog_folder_selected_cb):
        Make a shortcut with the unread count.

        * e-shell-folder-commands.c (e_shell_command_add_to_shortcut_bar):
        Make a shortcut with the unread count.

        * e-local-storage.c: Updated for API changes.

        * e-folder.c (e_folder_get_unread_count): New function, does what
        it says.
        (e_folder_set_unread_count): Ditto.

        * e-corba-storage.c (impl_StorageListener_new_folder): Renamed to
        match the IDL function name.
        (impl_StorageListener_update_folder): Ditto.
        (impl_StorageListener_removed_folder): Ditto.

        * Evolution-Storage.idl (struct Folder): Replace the boolean
        highlighted with a long unread_count.
        (updateFolder): Brought in from the now dead
        Evolution::LocalStorage.

        * Evolution-Shell.idl (getLocalStorage): Return a Storage instead
        of a LocalStorage.

        * Evolution-LocalStorage.idl: Removed, no longer needed, only used
        function, updateFolder, has been moved into Evolution::Storage
        interface.

        * evolution-local-storage.[ch]: Ditto.

        * evolution-storage.c (impl_Storage_updateFolder): Implementation
        of the updateFolder taken from ::LocalStorage.
        (class_init): New "update_folder" signal, taken from
        evolution-local-storage.c too.
        (evolution_storage_update_folder): Take an @unread_count int
        instead of a @highlighted boolean.
        (evolution_storage_new_folder): Same for here.
        (evolution_storage_update_folder_by_uri): And here.

        * evolution-storage-listener.h: "update_folder" signal no longer
        sends a @highlighted boolean.

2001-08-03  Jason Leach  <jleach@ximian.com>

        * e-shell-view-menu.c (update_offline_menu_item): Use Jakub's new
        "Work Online" icon and fix a typo.

svn path=/trunk/; revision=11633
2001-08-03 23:08:38 +00:00
c604cce9c6 Make the local storage name "Local Folders" instead of "local", looks
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".

svn path=/trunk/; revision=11241
2001-07-19 21:55:47 +00:00
c263befd20 convert the folder name from utf8 before displaying them in the dialog and
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.

svn path=/trunk/; revision=10943
2001-07-10 02:04:46 +00:00
8053d484f9 Added error dialogs for when the user tries to copy/move a folder over
itself, or move it under one of its descendants.  [Fixes #3959,
copying a folder over itself crashes Evolution.]

svn path=/trunk/; revision=10841
2001-07-06 08:35:27 +00:00
d02ed3c293 Get the File -> Folder -> Properties menu item work again for the
mailer.

svn path=/trunk/; revision=10793
2001-07-05 11:19:19 +00:00
d6372c9ae9 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.

svn path=/trunk/; revision=10621
2001-06-30 02:28:44 +00:00
d77b63aa3c Rename e_shell_new_view()' into e_shell_create_view()' to avoid
confusion with `e_shell_view_new()'.

svn path=/trunk/; revision=10556
2001-06-28 05:56:16 +00:00
be46f0d11c Fix a gazillion warnings.
svn path=/trunk/; revision=10451
2001-06-24 15:32:00 +00:00
602fee638e (Implemented deleting folders in the shell. Files changed that aren't
(Implemented deleting folders in the shell.  Files changed that aren't
 noted below were simply small indentation/space changes.  To play
 with deleting folders, right click on a selected folder in the folder
 tree, then choose Delete.)

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.

svn path=/trunk/; revision=10446
2001-06-23 18:58:02 +00:00
63f6e70ecc Allow a NULL @shell_view arg in
`e_shell_command_add_to_shortcut_bar()'.

svn path=/trunk/; revision=10160
2001-06-08 18:51:04 +00:00
9a3c412e4f Plug in all the folder tree right click menu verbs so bonobo-warnings
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.

svn path=/trunk/; revision=10128
2001-06-06 00:05:53 +00:00
65460ea535 New function (probably should just be static).
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.c (class_init): New signal
	"set_folder_bar_label" for EvolutionShellViewClass.

	* evolution-shell-view.c (impl_ShellView_set_folder_bar_label):
	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.

svn path=/trunk/; revision=10059
2001-05-31 00:24:59 +00:00
225120f19f Removed an unecessary sleep(2) call, so evolution will start up 2 seconds
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.

svn path=/trunk/; revision=10052
2001-05-30 19:39:47 +00:00
9288ec2e2c Added ETSPECDIR. Added e-storage-set-view.etspec to get installed.
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.

svn path=/trunk/; revision=9989
2001-05-25 18:35:40 +00:00
e9a5c3d19c Implemented the "Copy Folder" and "Move Folder" menu items. Untested.
svn path=/trunk/; revision=9899
2001-05-20 14:45:47 +00:00