Commit Graph

42 Commits

Author SHA1 Message Date
ddaa0af2ce Pass NULL as @unpopulate_folder_context_menu_fn to
* gui/component/addressbook-component.c (create_component): Pass
NULL as @unpopulate_folder_context_menu_fn to
evolution_shell_component_new().

* gui/component-factory.c (create_object): Pass NULL as
@unpopulate_folder_context_menu_fn to
evolution_shell_component_new().

* mail-account-gui.c (mail_account_gui_save): Remove unused
variable.

* component-factory.c (unpopulate_folder_context_menu): New.
(create_component): Pass it to evolution_shell_component_new().

* component-factory.c (create_component): Pass NULL as
@unpopulate_folder_context_menu_fn to
evolution_shell_component_new().

* e-storage-set-view.c (popup_folder_menu): Remove the context
menu items using
evolution_shell_component_client_unpopulate_folder_context_menu()
instead of doing it ourself, since BonoboUI sucks.

* evolution-shell-component-client.c
(evolution_shell_component_client_unpopulate_folder_context_menu):
New.

* evolution-test-component.c (register_component): Pass NULL as
@unpopulate_folder_context_menu_fn to
evolution_shell_component_new().

* evolution-shell-component.c: New member
unpopulate_folder_context_menu_fn in
EvolutionShellComponentPrivate.  New member uic in
EvolutionShellComponentPrivate.
(init): Init new members to NULL.
(destroy): bonobo_object_unref() priv->uic if not NULL.
(evolution_shell_component_new): New arg
@unpopulate_folder_context_menu_fn.
(evolution_shell_component_construct): Likewise.
(impl_populateFolderContextMenu): Set priv->uic to the newly
created UIComponent.
(impl_unpopulateFolderContextMenu): New, implementation for the
::unpopulateFolderContextMenu CORBA method.
(class_init): Install.

* Evolution-ShellComponent.idl (unpopulateFolderContextMenu): New
method.
(AlreadyPopulated): New exception.
(populateFolderContextMenu): Can raise it.
(NotPopulated): New exception.

svn path=/trunk/; revision=17963
2002-09-04 16:05:35 +00:00
2c29a42ba0 Create an Items placeholder under ComponentPlaceholder, and then
* e-storage-set-view.c (popup_folder_menu): Create an Items
placeholder under ComponentPlaceholder, and then
bonobo_ui_component_rm() it after we are done with the menu.  This
-should- fix #29782, but it doesn't.  I am not sure why.

* evolution-shell-component.h
(EVOLUTION_SHELL_COMPONENT_POPUP_PLACEHOLDER): Append a "/Items"
part.

svn path=/trunk/; revision=17952
2002-09-03 20:28:29 +00:00
ec3f54257d Pass "contacts" as the @folder_type to
* gui/component/addressbook-component.c (add_creatable_item): Pass
"contacts" as the @folder_type to
evolution_shell_component_add_user_creatable_item().

* gui/component-factory.c (add_creatable_item): New arg
@folder_type, pass it to
evolution_shell_component_add_user_creatable_item().
(create_object): Set the right folder types for the various
user-creatable items.

* component-factory.c (create_component): Pass "mail" as
@folder_type to
evolution_shell_component_add_user_creatable_item().

* evolution-test-component.c (register_component): Pass NULL for
@folder_type to
evolution_shell_component_add_user_creatable_item().

* e-shell-user-creatable-items-handler.c: New member folder_type
in struct MenuItem.
(ensure_menu_items): Initialize ->folder_type.
(item_is_default): New helper function.
(create_menu_xml): New arg @folder_type.  Put the items on the top
using item_is_default().
(shell_view_view_changed_callback): Pass the folder type to
create_menu_xml().

* evolution-shell-component.c: New member folder_type in
UserCreatableItemType.
(user_creatable_item_type_new): New arg @folder_type.
(user_creatable_item_type_free): Free ->folder_type.
(evolution_shell_component_add_user_creatable_item): New arg
@folder_type.
(impl__get_userCreatableItemTypes): Set ->folderType in the
returned CORBA structs.

* Evolution-ShellComponent.idl: New member folderType in struct
UserCreatableItemType.

* e-shell-user-creatable-items-handler.c: New member component_id
in struct MenuItem.  Removed member menu_xml from
EShellUserCreatableItemsHandlerPrivate.
(init): No need to initialize menu_xml here anymore.
(impl_destroy): ...And no need to free here, either.
(setup_menu_xml): New, derived from ensure_menu_xml().  This
orders the menu so that the items for the current component go at
the top.
(create_menu_xml): Removed.
(e_shell_user_creatable_items_handler_attach_menus): Set up
properly for the current component ID, using setup_menu_xml().

svn path=/trunk/; revision=17658
2002-07-31 20:36:16 +00:00
7189f01908 New arg @tooltip; pass it to
* gui/component/addressbook-component.c (add_creatable_item): New
arg @tooltip; pass it to
evolution_shell_component_add_user_creatable_item() [which now has
a @tooltip arg].

* gui/component-factory.c (add_creatable_item): New arg @tooltip.
Pass it to evolution_shell_component_add_user_creatable_item(),
which now has a @tooltip arg.
(create_object): Added tooltips.

* component-factory.c (create_component): Pass a tooltip to
evolution_shell_component_add_user_creatable_item.

* e-shell-user-creatable-items-handler.c: New member tooltip in
struct MenuItem.
(ensure_menu_items): Initialize the tooltip member.
(shell_view_view_changed_callback): Set the tooltip for the "New"
button.
(ensure_menu_xml): Set up the tooltip here as well.

* evolution-shell-component.c: Add tooltip member to struct
UserCreatableItemType.
(user_creatable_item_type_new): New arg @tooltip.
(evolution_shell_component_add_user_creatable_item): New arg
@tooltip.
(impl__get_userCreatableItemTypes): Put the tooltip in the struct
as well.

* e-shell-user-creatable-items-handler.c (setup_toolbar_button):
Create a GtkTooltips object and attach it to the combo_button
using gtk_object_set_data().
(shell_view_view_changed_callback): Set up a tooltip for the
button, according to the default.

* Evolution-ShellComponent.idl: Add a tooltip member to struct
UserCreatableItemType.

svn path=/trunk/; revision=17343
2002-07-02 15:04:14 +00:00
3d386b57d1 Check with e_shell_prepare_for_quit() before quitting.
* e-shell-view-menu.c (command_quit): Check with
e_shell_prepare_for_quit() before quitting.

* e-shell.c (e_shell_prepare_for_quit): New.

* evolution-test-component.c (request_quit_fn): New function
asking for confirmation to quit.

* evolution-shell-component.c (evolution_shell_component_new): New
arg @request_quit_fn.
(impl_requestQuit): New, implementation for
EvolutionShellComponent::requestQuit.
(evolution_shell_component_result_to_string): Handle
EVOLUTION_SHELL_COMPONENT_CANCEL.
(evolution_shell_component_client_request_quit): New.

* Evolution-ShellComponent.idl (requestQuit): New.

* component-factory.c (create_component): Pass NULL as
@request_quit_fn.

* component-factory.c (create_component): Pass NULL as
@request_quit_fn.

* gui/component-factory.c (create_object): Pass NULL as
@request_quit_fn.

* gui/component/addressbook-component.c (create_component): Pass
NULL as @request_quit_fn.

svn path=/trunk/; revision=16925
2002-05-15 21:41:51 +00:00
2a3a53e9cf Add a "view_info" argument.
* Evolution-ShellComponent.idl (createView): Add a "view_info"
	argument.

	* e-shell-view.c (get_view_for_uri): if the URI contains a '#',
	split it into a URI and a "view_info" at that point. (Otherwise,
	pass "" for the view_info to ShellComponent_createView.) This can
	be used for things like specifying day/month/week view to the
	calendar.

	* e-shell.c (create_view): Ignore e_shell_view_display_uri's
	return code: it's possible/likely that the requested URL is remote
	and hasn't been filled in yet.
	(impl_Shell_handleURI): Don't use Shell_createNewView directly,
	call e_shell_create_view_from_uri_and_settings. (For the above fix
	and some others.)

	* evolution-shell-component.c (impl_createView): Add view_info.

	* evolution-shell-component-client.c
	(evolution_shell_component_client_create_view): Add view_info.

	* evolution-test-component.c (create_view_fn): add view_data.

	* e-corba-storage-registry.c
	(impl_StorageRegistry_getFolderByUri): kill a warning

svn path=/trunk/; revision=16397
2002-04-09 14:59:26 +00:00
364cb04c2b Move the ComponentActionsPlaceholder into the Actions menu, instead of the
* evolution.xml: Move the ComponentActionsPlaceholder into the
Actions menu, instead of the Actions menu being in the
ComponentActionsPlaceholder.
* evolution-addressbook.xml: Updated accordingly.
* evolution-calendar.xml: Updated accordingly.
* evolution-mail-global.xml: Updated accordingly.
* evolution-mail-list.xml: Updated accordingly.
* evolution-mail-message.xml: Updated accordingly.
* evolution-mail-messagedisplay.xml: Updated accordingly.
* evolution-tasks.xml: Updated accordingly.

* evolution.xml: Add "SendReceive" verb, menu item and toolbar
button.

* evolution-mail-global.xml: Remove "MailGetSend" verb and menu
item.

* e-shell-view-menu.c (command_send_receive): New, implementation
for the "SendReceive" verb.

* e-shell.c (e_shell_send_receive): New.

* evolution-shell-component.c (impl_sendReceive): Implementation
of ShellComponent::sendReceive.
(class_init): Add the "send_receive" signal.

* evolution-shell-component.h: Added `send_receive' signal.

* Evolution-ShellComponent.idl: Added ShellComponent::sendReceive.

* component-factory.c (send_receive_cb): New, callback for the
"send_receive" signal on the EvolutionShellComponent.
(create_component): Connect.

* folder-browser-ui.c: Remove verb "MailGetSend".

* mail-callbacks.c (send_receive_mail): Removed.

* mail-send-recv.c: Remove member current_folder from struct
_send_data.
(free_send_data): No need to unref here.
(build_dialogue): Removed arg @current_folder.
(mail_send_receive): Likewise.

svn path=/trunk/; revision=16220
2002-03-21 00:07:49 +00:00
4eb4ae3be8 [Implement an Outlook-style "New" dropdown button. It is basically
done but it needs pretty icons so I am leaving it disabled for now.]

* e-combo-button.c: Remove member `separator' from
`EComboButtonPrivate'.  New members `icon', `label'.
(init): There shall be no separator no more.  Init `icon' and
`label' to %NULL.
(e_combo_button_construct): Set no relief.
(e_combo_button_new): Don't get a @menu arg anymore.
(e_combo_button_construct): Likewise.
(e_combo_button_set_icon): New.
(e_combo_button_set_label): New.
(e_combo_button_set_menu): New.
(impl_clicked): New, overriding the "clicked" method for
GtkButton.
(class_init): Install.
(impl_button_release_event): Removed.
(class_init): No need to override ::release_event with this
anymore.
(impl_released): New, override for the GtkButton::released method.
(class_init): Install.

* e-shell-user-creatable-items-handler.c: New member `id' in
struct `Component'.  New member `icon' in struct `MenuItem'.
(component_free): Free ->id.
(component_new): Renamed from `component_new_from_client'.  Get an
@id arg and set ->id accordingly.
(e_shell_user_creatable_items_handler_add_component): New arg @id.
Pass it to `component_new'.
(e_shell_user_creatable_items_handler_setup_menus): New arg
@current_component_id.
(e_shell_user_creatable_items_handler_update_menus): New.
(set_current_component): New helper function.
(get_component_by_id): New helper function.
(add_verbs): Renamed from `add_verbs_to_ui_component()'.  Get a
@shell_view instead of a @ui_component.  Set the SHELL_VIEW_KEY on
the ui_component of the shell_view to point to the shell_view
itself.
(ensure_menu_items): Set item->icon to NULL.
(free_menu_items): Unref item->icon.
(ensure_menu_xml): Set the icon as well.
(get_default_action_for_view): New helper function.
(find_menu_item_for_verb): New helper function.
(shell_view_view_changed_callback): New callback, set up the label
on the "New" button depending on the current component.
(e_shell_user_creatable_items_handler_attach_menus): New.  For
now, do not display the toolbar button yet.
(execute_verb): New helper function, splitting out code from
`verb_fn'.
(verb_fn): Use `execute_verb'.
(combo_button_activate_default_callback): Callback for the
"activate_default" signal on the EComboButton.
(setup_toolbar_button): Connect.

* evolution-shell-component.c: New member `icon' in
`UserCreatableItemType'.
(impl__get_userCreatableItemTypes): Put the ->icon in the
corba_type as well.
(user_creatable_item_type_new): Get a new @icon argument.
(evolution_shell_component_add_user_creatable_item): New arg
@icon.

* Evolution-ShellComponent.idl: New member `icon' in struct
`UserCreatableItemType'.

* evolution-test-component.c (register_component): Pass a NULL
@icon to `evolution_shell_component_add_user_creatable_item()'.

* e-shell-view.c (class_init): Add the signal to the class.
(e_shell_view_display_uri): Emit "view_changed".
(e_shell_view_get_current_component_id): New.

* evolution-shell-component-client.c: New member `id' in
EvolutionShellComponentClientPrivate.
(init): Init to NULL.
(impl_destroy): Free.
(evolution_shell_component_client_new_for_objref): Removed.
(evolution_shell_component_client_construct): New arg @id.
Initialize ->id from it.
(evolution_shell_component_client_get_id): New.

* e-shell-view.h: New signal "view_changed".

* evolution-activity-client.c (create_icon_from_pixbuf): Removed.
(create_corba_animated_icon_from_pixbuf_array): Removed.
(evolution_activity_client_construct): Use
`e_new_corba_animated_icon_from_pixbuf_array()' instead.

svn path=/trunk/; revision=15438
2002-01-23 22:21:24 +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
367221fa5e New member is_interactive' in EShellPrivate'. (init): Init to %FALSE.
* e-shell.c: New member `is_interactive' in `EShellPrivate'.
(init): Init to %FALSE.
(set_interactive): New.
(e_shell_create_view): Make interactive.
(view_destroy_cb): If no views are left, make non-interactive.

* evolution-shell-component.c (class_init): Set up the
"interactive" signal.
(impl_interactive): New implementation for the ::interactive
method.
(class_init): Install.

* evolution-shell-component.h: New signal `interactive'.

* Evolution-ShellComponent.idl: New method ::interactive.

svn path=/trunk/; revision=13890
2001-10-22 19:09:24 +00:00
171018d311 If the owner is dead, emit "owner_died" instead of "owner_unset".
* evolution-shell-component.c (impl_setOwner): If the owner is
dead, emit "owner_died" instead of "owner_unset".
(impl_owner_died): New, default implementation for "owner_died".
(class_init): Install it.

* evolution-shell-component.h: New signal "owner_died".

svn path=/trunk/; revision=13449
2001-10-05 18:17:48 +00:00
fc1e5673bb If setting the owner fails, print the a warning message out. Then restart
* e-shell.c (set_owner_on_components): If setting the owner fails,
print the a warning message out.  Then restart the component.

* e-component-registry.c (component_free): Return a boolean value.
%FALSE if ::unsetOwner raises an exception.
(register_type): New arg @override_duplicate, to avoid complaining
if a component gets re-registered.
(register_component): Likewise.
(e_component_registry_restart_component): New.

* e-uri-schema-registry.c
(e_uri_schema_registry_set_handler_for_schema): Changed return
type to `void'.  Just remove the old handler and set up the new
one.

* evolution-shell-component-client.c (corba_exception_to_result):
Translate ::OldOwnerHasDied into
EVOLUTION_SHELL_COMPONENT_OLDOWNERHASDIED.

* evolution-shell-component.h: New enum value
`EVOLUTION_SHELL_COMPONENT_OLDOWNERHASDIED'.

* evolution-shell-component.c (impl_setOwner): If the old owner is
not alive anymore [use CORBA_Object_non_existent() to figure this
out], emit OWNER_UNSET and raise `OldOwnerHasDied'.
(evolution_shell_component_result_to_string): New.

* Evolution-ShellComponent.idl: New exception `OldOwnerHasDied'.
(ShellComponent::setOwner): Can raise it.

* e-folder-type-registry.c
(e_folder_type_register_type_registered): New.
(e_folder_type_register_unregister_type): New.

svn path=/trunk/; revision=13446
2001-10-05 17:49:35 +00:00
d9ed7a6a63 Added display_name and description to the type.
* evolution-test-component.c: Added display_name and description
to the type.

* evolution-shell-component.c (impl__get_supported_types): Pass
`display_name' and `description' here.
(evolution_shell_component_construct): Likewise.

* evolution-shell-component.h: New members `display_name',
`description' in `EvolutionShellComponentFolderType'.

* e-component-registry.c (register_type): New args @description
and @display_name.  Pass to
`e_folder_type_registry_register_type()'.
(register_component): Pass the values returned in the sequence
from __get_supported_types.

* e-folder-type-registry.c: New members `display_name' and
`description' in `struct _FolderType'.
(folder_type_new): New args @description and @display_name.
Initialize the respective fields in the `FolderType' accordingly.
(folder_type_free): Free `display_name' and `description'.
(register_folder_type): New args @display_name, @description.
(e_folder_type_registry_register_type): New args @display_name,
@description.
(e_folder_type_registry_get_description_for_type): New.
(e_folder_type_registry_get_display_name_for_type): New.

* Evolution-ShellComponent.idl: Added `display_name' and
`description' fields to the `FolderType' struct.

svn path=/trunk/; revision=12245
2001-08-20 04:42:04 +00:00
d471640fe8 Updated to display the parent folder's URI and its type as well.
* evolution-test-component.c (user_create_new_item_callback):
Updated to display the parent folder's URI and its type as well.

* evolution-shell-component.c (impl_userCreateNewItem): Updated to
get the @parent_folder_physical_uri and the @parent_folder_type.
(class_init): Update the "user_create_new_item" signal to have
@parent_folder_physical_uri and @parent_folder_type args.

* e-shell-view.c (get_type_for_folder): Don't bork on a NULL
@physical_uri_return.
(e_shell_view_get_current_physical_uri): New.
(e_shell_view_get_current_folder_type): New.

* e-shell-user-creatable-items-handler.c
(e_shell_user_creatable_items_handler_setup_menus): Replace
@ui_component arg with a @shell_view arg.  Set it on the
UIComponent using gtk_object_set_data().
(verb_fn): Pass the type and physical URI of the current folder;
retrieve that from the shell_view got with gtk_object_get_data().

* Evolution-ShellComponent.idl
(userCreateNewItem): New args @parent_folder_uri,
@parent_folder_type.

svn path=/trunk/; revision=11863
2001-08-10 01:07:46 +00:00
20801a94aa Add the menu items using the EShellUserCreatableItemsHandler.
* e-shell-view.c (e_shell_view_construct): Add the menu items
using the EShellUserCreatableItemsHandler.

* e-shell-user-creatable-items-handler.c: New.
* e-shell-user-creatable-items-handler.h: New.

* e-shell.c: New member `user_creatable_items_handler' in
`EShellPrivate'.
(init): Initialize to NULL.
(destroy): Unref.
(e_shell_construct): Create here.
(e_shell_get_user_creatable_items_handler): New accessor.
(setup_components): Add the registered components to the
user_creatable_items_handler.

* evolution-test-component.c (factory_fn): Add a couple sample
user-creatable items.
(user_create_new_item_callback): New callback for the
"user_create_new_item" signal on the EvolutionShellComponent.
(factory_fn): Connect.

* e-shell.c (e_shell_get_component_registry): New.

* evolution-shell-component.c: New enum value
`USER_CREATE_NEW_ITEM'.  New member `user_create_item_types' in
`_EvolutionShellComponentPrivate'.
(init): Init to NULL.
(impl_destroy): Free it.
(user_creatable_item_type_free): New helper function.
(user_creatable_item_type_new): New helper function.
(impl_userCreateNewItem): New, implementation for
::userCreateNewItem.
(class_init): Install the "user_create_new_item" signal and the
userCreateNewItem impl.
(impl__get_external_uri_schemas): Renamed from
`impl_ShellComponent__get_external_uri_schemas'.
(impl___get_supported_types): Renamed from
`impl_ShellComponent__get_supported_types'.
(impl__get_user_creatable_item_types): New, implementation for the
`user_creatable_item_types' attribute.
(class_init): Install it.
(evolution_shell_component_add_user_creatable_item): New.

* evolution-shell-component.h: Added signal
`user_create_new_item'.

* Evolution-ShellComponent.idl: Added typedefs
`UserCreatableItemType', `UserCreatableItemTypeList'.  New
attribute `user_creatable_item_types'.
(userCreateNewItem): New.

svn path=/trunk/; revision=11849
2001-08-09 23:37:56 +00:00
97cc1d57ad Add an extra @type arg to the xferFolder and removeFolder methods in
the ShellComponent interface.  Updated the EvolutionShellComponent
GTK+ wrapper and all the component accordingly.  Get the calendar to
use this so it can delete both tasks and calendar folders.

svn path=/trunk/; revision=11300
2001-07-23 02:04:14 +00:00
ced2af3321 Add a `user_creatable' property to folder types and make components
use it, so that e.g. you cannot create a folder of type "mailstorage"
or "vtrash".

svn path=/trunk/; revision=11298
2001-07-22 03:50:07 +00:00
268c7dbe42 Make the shell to be able to display URIs that the user specified on
the command-line.

svn path=/trunk/; revision=10554
2001-06-28 04:50:02 +00:00
d82d5a7997 Add method `ShellComponent::handleExternalURI' and an
`external_uri_schemas' attribute.  Update the EvolutionShellComponent
GTK+ wrapper accordingly.  Update all the components to pass a NULL
`external_uri_schemas' list when initializing themselves as
EvolutionShellComponents.

svn path=/trunk/; revision=10548
2001-06-27 23:17:41 +00:00
de5ad09661 track change to the path to the ComponentPlaceholder.
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.

svn path=/trunk/; revision=9942
2001-05-23 09:33:44 +00:00
12de520a89 add this define for the xml path to use when adding menu items to the
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.

svn path=/trunk/; revision=9777
2001-05-11 23:13:28 +00:00
bfdcfc7949 add a "debug" method to tell a component to output debugging messages to a
* 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.

svn path=/trunk/; revision=9046
2001-03-30 16:39:46 +00:00
f342817e88 Finish the DnD stuff by implementing move/copy on the shell side as
well.  Now we should just need to implement the corresponding bits in
the components...

svn path=/trunk/; revision=8949
2001-03-26 18:55:41 +00:00
9618cd2cb6 Added a ShellComponent method to retrieve the selection for drag and
drop and support for it in the shell.  Untested.

svn path=/trunk/; revision=8594
2001-03-08 12:55:05 +00:00
3f72523dfa Added the ability for components to specify drag/drop types, and
started some work to get the EStorageSetView to use them.  Still in
progress, nothing really happens for the user yet.

svn path=/trunk/; revision=8589
2001-03-07 23:48:18 +00:00
f581cae993 add include. (show_import_wizard): update signature to that of a verb.
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.

svn path=/trunk/; revision=8359
2001-02-23 00:53:41 +00:00
f7926820ed Remove <config.h> #includes from the `.h' files, which is known to be,
um, a wrong thing to do.

svn path=/trunk/; revision=7983
2001-02-05 20:45:36 +00:00
d554c5bbab Initial steps to support Drag 'n Drop in the tree view.
svn path=/trunk/; revision=7484
2001-01-14 02:05:21 +00:00
936a6d77dd Add an ::asyncCopyFolder method to the ShellComponent interface. Move
all the message hiding options to the View menu.

svn path=/trunk/; revision=7456
2001-01-12 21:00:21 +00:00
3d3cfc1137 A very, long, very tedious IDL API rename and re-scoping;
this script + some grunt approximates the work:

    s/Evolution_MessageList/GNOME_Evolution_MessageList/g;
    s/GNOME_Evolution_MessageList_select_message/GNOME_Evolution_MessageList_selectMessage/g;
    s/GNOME_Evolution_MessageList_open_message/GNOME_Evolution_MessageList_openMessage/g;

    s/Evolution_Folder([ \t])/GNOME_Evolution_Folder$1/g;
    s/Evolution_FolderTypeList/GNOME_Evolution_FolderTypeList/g;
    s/Evolution_FolderBrowser/GNOME_Evolution_FolderBrowser/g;
    s/GNOME_Evolution_FolderBrowser_get_message_list/GNOME_Evolution_FolderBrowser_getMessageList/g;

    s/Evolution_LocalStorage/GNOME_Evolution_LocalStorage/g;
    s/GNOME_Evolution_LocalStorage_update_folder/GNOME_Evolution_LocalStorage_updateFolder/g;

    s/Evolution_ShellView/GNOME_Evolution_ShellView/g;
    s/GNOME_Evolution_ShellView_set_message/GNOME_Evolution_ShellView_setMessage/g;
    s/GNOME_Evolution_ShellView_unset_message/GNOME_Evolution_ShellView_unsetMessage/g;
    s/GNOME_Evolution_ShellView_change_current_view/GNOME_Evolution_ShellView_changeCurrentView/g;

    s/Evolution_StorageSetViewListener/GNOME_Evolution_StorageSetViewListener/g;
    s/GNOME_Evolution_StorageSetViewListener_folder_selected/GNOME_Evolution_StorageSetViewListener_notifyFolderSelected/g;
    s/GNOME_Evolution_StorageSetViewListener_storage_selected/GNOME_Evolution_StorageSetViewListener_notifyStorageSelected/g;

    s/Evolution_StorageSetView/GNOME_Evolution_StorageSetView/g;
    s/GNOME_Evolution_StorageSetView_add_listener/GNOME_Evolution_StorageSetView_addListener/g;
    s/GNOME_Evolution_StorageSetView_remove_listener/GNOME_Evolution_StorageSetView_removeListener/g;

    s/Evolution_Shell/GNOME_Evolution_Shell/g;
    s/GNOME_Evolution_Shell_get_component_for_type/GNOME_Evolution_Shell_getComponentByType/g;
    s/GNOME_Evolution_Shell_user_select_folder/GNOME_Evolution_Shell_selectUserFolder/g;
    s/GNOME_Evolution_Shell_get_local_storage/GNOME_Evolution_Shell_getLocalStorage/g;
    s/GNOME_Evolution_Shell_create_storage_set_view/GNOME_Evolution_Shell_createStorageSetView/g;

    s/Evolution_FolderSelectionListener/GNOME_Evolution_FolderSelectionListener/g;
    s/GNOME_Evolution_FolderSelectionListener_selected/GNOME_Evolution_FolderSelectionListener_notifySelected/g;
    s/GNOME_Evolution_FolderSelectionListener_cancel/GNOME_Evolution_FolderSelectionListener_notifyCanceled/g;

    s/Evolution_Storage/GNOME_Evolution_Storage/g;
    s/GNOME_Evolution_Storage_add_listener/GNOME_Evolution_Storage_addListener/g;
    s/GNOME_Evolution_Storage_remove_listener/GNOME_Evolution_Storage_removeListener/g;

    s/GNOME_Evolution_StorageListener_destroyed/GNOME_Evolution_StorageListener_notifyDestroyed/g;
    s/GNOME_Evolution_StorageListener_new_folder/GNOME_Evolution_StorageListener_notifyFolderCreated/g;
    s/GNOME_Evolution_StorageListener_update_folder/GNOME_Evolution_StorageListener_notifyFolderUpdated/g;
    s/GNOME_Evolution_StorageListener_removed_folder/GNOME_Evolution_StorageListener_notifyFolderRemoved/g;

    s/GNOME_Evolution_StorageRegistry_register_storage/GNOME_Evolution_StorageRegistry_addStorage/g;
    s/GNOME_Evolution_StorageRegistry_unregister_storage/GNOME_Evolution_StorageRegistry_removeStorageByName/g;

    s/Evolution_ShellComponent/GNOME_Evolution_ShellComponent/g;
    s/GNOME_Evolution_ShellComponent_set_owner/GNOME_Evolution_ShellComponent_setOwner/g;
    s/GNOME_Evolution_ShellComponent_unset_owner/GNOME_Evolution_ShellComponent_unsetOwner/g;
    s/GNOME_Evolution_ShellComponent_create_view/GNOME_Evolution_ShellComponent_createView/g;
    s/GNOME_Evolution_ShellComponent_async_create_folder/GNOME_Evolution_ShellComponent_addFolderAsync/g;
    s/GNOME_Evolution_ShellComponent_async_remove_folder/GNOME_Evolution_ShellComponent_removeFolderAsync/g;
    s/GNOME_Evolution_ShellComponent_populate_folder_context_menu/GNOME_Evolution_ShellComponent_populateFolderContextMenu/g;

    s/GNOME_Evolution_ShellComponentListener_report_result/GNOME_Evolution_ShellComponentListener_notifyResult/g;

    s/Evolution_Session/GNOME_Evolution_Session/g;
    s/GNOME_Evolution_Session_save_configuration/GNOME_Evolution_Session_saveConfiguration/g;
    s/GNOME_Evolution_Session_load_configuration/GNOME_Evolution_Session_loadConfiguration/g;

    s/Evolution_Calendar_Cal/GNOME_Evolution_Calendar_Cal/g;
    s/GNOME_Evolution_Calendar_Cal_get_n_objects/GNOME_Evolution_Calendar_Cal_countObjects/g;
    s/GNOME_Evolution_Calendar_Cal_get_object/GNOME_Evolution_Calendar_Cal_getObject/g;
    s/GNOME_Evolution_Calendar_Cal_get_uids/GNOME_Evolution_Calendar_Cal_getUIds/g;
    s/GNOME_Evolution_Calendar_Cal_get_changed_uids/GNOME_Evolution_Calendar_Cal_getChangedUIds/g;
    s/GNOME_Evolution_Calendar_Cal_get_objects_in_range/GNOME_Evolution_Calendar_Cal_getObjectsInRange/g;
    s/GNOME_Evolution_Calendar_Cal_get_alarms_in_range/GNOME_Evolution_Calendar_Cal_getAlarmsInRange/g;
    s/GNOME_Evolution_Calendar_Cal_get_alarms_for_object/GNOME_Evolution_Calendar_Cal_getAlarmsForObject/g;
    s/GNOME_Evolution_Calendar_Cal_update_object/GNOME_Evolution_Calendar_Cal_updateObject/g;
    s/GNOME_Evolution_Calendar_Cal_remove_object/GNOME_Evolution_Calendar_Cal_removeObject/g;

    s/Evolution_Calendar_Listener/GNOME_Evolution_Calendar_Listener/g;
    s/GNOME_Evolution_Calendar_Listener_cal_loaded/GNOME_Evolution_Calendar_Listener_notifyCalLoaded/g;
    s/GNOME_Evolution_Calendar_Listener_obj_updated/GNOME_Evolution_Calendar_Listener_notifyObjUpdated/g;
    s/GNOME_Evolution_Calendar_Listener_obj_removed/GNOME_Evolution_Calendar_Listener_notifyObjRemoved/g;

    s/Evolution_Calendar_CalFactory/GNOME_Evolution_Calendar_CalFactory/g;
    s/GNOME_Evolution_Calendar_CalFactory_load/GNOME_Evolution_Calendar_CalFactory_load/g;
    s/GNOME_Evolution_Calendar_CalFactory_create/GNOME_Evolution_Calendar_CalFactory_create/g;

    s/Evolution_Composer/GNOME_Evolution_Composer/g;
    s/GNOME_Evolution_Composer_set_headers/GNOME_Evolution_Composer_setHeaders/g;
    s/GNOME_Evolution_Composer_set_body_text/GNOME_Evolution_Composer_setBodyText/g;
    s/GNOME_Evolution_Composer_attach_MIME/GNOME_Evolution_Composer_attachMIME/g;
    s/GNOME_Evolution_Composer_attach_data/GNOME_Evolution_Composer_attachData/g;
    s/GNOME_Evolution_Composer_show/GNOME_Evolution_Composer_show/g;

    s/Evolution_Addressbook_SelectNames/GNOME_Evolution_Addressbook_SelectNames/g;
    s/GNOME_Evolution_Addressbook_SelectNames_add_section/GNOME_Evolution_Addressbook_SelectNames_addSection/g;
    s/GNOME_Evolution_Addressbook_SelectNames_get_entry_for_section/GNOME_Evolution_Addressbook_SelectNames_getEntryBySection/g;
    s/GNOME_Evolution_Addressbook_SelectNames_activate_dialog/GNOME_Evolution_Addressbook_SelectNames_activateDialog/g;

    s/Evolution_CardCursor/GNOME_Evolution_Addressbook_CardCursor/g;
    s/GNOME_Evolution_Addressbook_CardCursor_get_length/GNOME_Evolution_Addressbook_CardCursor_getLength/g;
    s/GNOME_Evolution_Addressbook_CardCursor_get_nth/GNOME_Evolution_Addressbook_CardCursor_getNth/g;

    s/Evolution_BookViewListener/GNOME_Evolution_Addressbook_BookViewListener/g;
    s/GNOME_Evolution_Addressbook_BookViewListener_signal_card_added/GNOME_Evolution_Addressbook_BookViewListener_notifyCardAdded/g;
    s/GNOME_Evolution_Addressbook_BookViewListener_signal_card_removed/GNOME_Evolution_Addressbook_BookViewListener_notifyCardRemoved/g;
    s/GNOME_Evolution_Addressbook_BookViewListener_signal_card_changed/GNOME_Evolution_Addressbook_BookViewListener_notifyCardChanged/g;
    s/GNOME_Evolution_Addressbook_BookViewListener_signal_sequence_complete/GNOME_Evolution_Addressbook_BookViewListener_notifySequenceComplete/g;
    s/GNOME_Evolution_Addressbook_BookViewListener_signal_status_message/GNOME_Evolution_Addressbook_BookViewListener_notifyStatusMessage/g;

    s/Evolution_BookView/GNOME_Evolution_Addressbook_BookView/g;

    s/Evolution_Book/GNOME_Evolution_Addressbook_Book/g;
    s/GNOME_Evolution_Addressbook_Book_get_vcard/GNOME_Evolution_Addressbook_Book_getVCard/g;
    s/GNOME_Evolution_Addressbook_Book_can_write/GNOME_Evolution_Addressbook_Book_isWriteable/g;
    s/GNOME_Evolution_Addressbook_Book_can_write_card/GNOME_Evolution_Addressbook_Book_isCardWriteable/g;
    s/GNOME_Evolution_Addressbook_Book_create_card/GNOME_Evolution_Addressbook_Book_addCard/g;
    s/GNOME_Evolution_Addressbook_Book_remove_card/GNOME_Evolution_Addressbook_Book_removeCard/g;
    s/GNOME_Evolution_Addressbook_Book_modify_card/GNOME_Evolution_Addressbook_Book_modifyCard/g;
    s/GNOME_Evolution_Addressbook_Book_get_cursor/GNOME_Evolution_Addressbook_Book_getCursor/g;
    s/GNOME_Evolution_Addressbook_Book_get_book_view/GNOME_Evolution_Addressbook_Book_getBookView/g;
    s/GNOME_Evolution_Addressbook_Book_get_changes/GNOME_Evolution_Addressbook_Book_getChanges/g;
    s/GNOME_Evolution_Addressbook_Book_check_connection/GNOME_Evolution_Addressbook_Book_checkConnection/g;
    s/GNOME_Evolution_Addressbook_Book_get_static_capabilities/GNOME_Evolution_Addressbook_Book_getStaticCapabilities/g;
    s/GNOME_Evolution_Addressbook_Book_get_name/GNOME_Evolution_Addressbook_Book_getName/g;

    s/Evolution_BookListener/GNOME_Evolution_Addressbook_BookListener/g;
    s/GNOME_Evolution_Addressbook_BookListener_respond_create_card/GNOME_Evolution_Addressbook_BookListener_notifyCardCreated/g;
    s/GNOME_Evolution_Addressbook_BookListener_respond_remove_card/GNOME_Evolution_Addressbook_BookListener_notifyCardRemoved/g;
    s/GNOME_Evolution_Addressbook_BookListener_respond_modify_card/GNOME_Evolution_Addressbook_BookListener_notifyCardModified/g;
    s/GNOME_Evolution_Addressbook_BookListener_report_open_book_progress/GNOME_Evolution_Addressbook_BookListener_notifyOpenBookProgress/g;
    s/GNOME_Evolution_Addressbook_BookListener_respond_open_book/GNOME_Evolution_Addressbook_BookListener_notifyBookOpened/g;
    s/GNOME_Evolution_Addressbook_BookListener_respond_get_cursor/GNOME_Evolution_Addressbook_BookListener_notifyCursorRequested/g;
    s/GNOME_Evolution_Addressbook_BookListener_respond_get_view/GNOME_Evolution_Addressbook_BookListener_notifyViewRequested/g;
    s/GNOME_Evolution_Addressbook_BookListener_respond_get_changes/GNOME_Evolution_Addressbook_BookListener_notifyChangesRequested/g;
    s/GNOME_Evolution_Addressbook_BookListener_report_connection_status/GNOME_Evolution_Addressbook_BookListener_notifyConnectionStatus/g;

    s/Evolution_BookFactory/GNOME_Evolution_Addressbook_BookFactory/g;
    s/GNOME_Evolution_Addressbook_BookFactory_open_book/GNOME_Evolution_Addressbook_BookFactory_openBook/g;

    s/Evolution_SummaryComponent/GNOME_Evolution_Summary_Component/g;
    s/GNOME_Evolution_Summary_SummaryComponent_set_owner/GNOME_Evolution_Summary_Component_setOwner/g;
    s/GNOME_Evolution_Summary_SummaryComponent_unset_owner/GNOME_Evolution_Summary_Component_unsetOwner/g;
    s/GNOME_Evolution_Summary_SummaryComponent_create_view/GNOME_Evolution_Summary_Component_createView/g;
    s/GNOME_Evolution_Summary_SummaryComponent_destroy_view/GNOME_Evolution_Summary_Component_destroyView/g;

    s/Evolution_Summary([ \t])/GNOME_Evolution_Summary_ViewFrame$1/g;
    s/Evolution_Summary_set_title/GNOME_Evolution_Summary_ViewFrame_setTitle/g;
    s/Evolution_Summary_set_icon/GNOME_Evolution_Summary_ViewFrame_setIcon/g;
    s/Evolution_Summary_update_component/GNOME_Evolution_Summary_ViewFrame_updateComponent/g;

    s/GNOME_GNOME/GNOME/g;
    s/GNOME_GNOME/GNOME/g;
    s/GNOME_GNOME/GNOME/g;

svn path=/trunk/; revision=6535
2000-11-10 20:41:13 +00:00
910b29b7d9 update to new UI handler
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.

svn path=/trunk/; revision=6082
2000-10-20 21:07:26 +00:00
f3533f595d update for new UI handler.
2000-10-18  Michael Meeks  <michael@helixcode.com>

	* evolution-shell-component.c (impl_ShellComponent_populate_folder_context_menu):
	update for new UI handler.

svn path=/trunk/; revision=6022
2000-10-19 03:19:23 +00:00
d5a93f01c1 Disable summary stuff, it appears to be badly broken.
2000-10-05  Michael Meeks  <michael@helixcode.com>

	* component-factory.c (summary_fn, component_factory_init): Disable
	summary stuff, it appears to be badly broken.

	* Makefile.am (evolution_mail_SOURCES): add mail-summary.[ch]

	* subscribe-dialog.c (update_pixmaps): upd.
	(set_pixmap): upd.
	(subscribe_dialog_gui_init): upd.
	remove redundant and annoying forward definitions.

	* folder-browser-factory.c (control_deactivate): upd.
	(control_activate_cb): upd.
	(control_activate): upd.
	(set_pixmap): upd.
	(update_pixmaps): upd.
	(register_ondemand): upd.
	(create_ondemand_hooks): upd.

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-05  Michael Meeks  <michael@helixcode.com>

	* contact-editor/e-contact-editor.c (create_ui): upd.
	(e_contact_editor_init): upd.

	* gui/component/addressbook.c (control_activate_cb): upd.
	(control_deactivate): kill.
	(control_activate): upd.

2000-10-05  Michael Meeks  <michael@helixcode.com>

	* gui/calendar-commands.c: upd.
	(calendar_control_activate): upd.
	(calendar_control_deactivate): upd.

2000-10-05  Michael Meeks  <michael@helixcode.com>

	* component/e-summary-factory.c (control_activate): upd.
	(set_pixmap): upd. (update_pixmaps): upd.
	(control_activate_cb): upd.
	(control_deactivate): upd.

svn path=/trunk/; revision=5742
2000-10-05 07:10:04 +00:00
5778265e23 add "in string evolution_homedir" to ShellComponent::set_owner's
* 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.

svn path=/trunk/; revision=4710
2000-08-10 23:59:41 +00:00
5dad2a9d03 Add interfaces to populate a folder's context menu. (Untested.)
svn path=/trunk/; revision=4240
2000-07-20 16:00:29 +00:00
55499e0ce4 EvolutionShellClient.
svn path=/trunk/; revision=3820
2000-06-30 05:36:32 +00:00
bbb6a6942f Implemented folder creation dialog (File -> New -> Folder). To make
it really work though, the components should implement creation
functionality by passing an appropriate function pointer in
`e_shell_component_new()' for @create_folder_fn.

svn path=/trunk/; revision=3504
2000-06-10 17:56:46 +00:00
7f36752a67 Initial support for creating/removing folders. This implies some new
IDL methods and new functions to implement on the component side.  I
have also added a simple folder creation dialog in the shell.  It's
quite unfinished and untested.

svn path=/trunk/; revision=3491
2000-06-09 19:19:36 +00:00
fad1048c1b Make quit work again by implementing a CORBA method to unregister
components in ShellComponent.  Implemented toggle menu items to
hide/show the shortcut bar and the folder bar (but they don't work,
apparently because of some BonoboUIHandler bogosity).  Implemented a
CORBA method in Shell to allow a client to get the component that
handles a certain folder type.

svn path=/trunk/; revision=3303
2000-05-30 23:59:22 +00:00
47ab2202ba Made the storage view update at changes in the storage, and
implemented a BonoboObject for wrapping the Evolution::Storage CORBA
interface.  Also fixed a few bugs.

This makes the shell's storage extensibility usable for Evolution
components.

svn path=/trunk/; revision=3219
2000-05-26 14:49:12 +00:00
bb241192eb Reorganized the shell to allow dynamic registration of storages and
folder types, and changed all the components to work with the new
setup.

svn path=/trunk/; revision=3199
2000-05-25 05:55:59 +00:00