* e-shell-folder-title-bar.c (e_shell_folder_title_bar_construct): Add some padding to the label so that the title doesn't move around when you switch between pop-up and non-pop-up folder bar. Also, change all the GtkLabels to be GtkClippedLabels instead. (e_shell_folder_title_bar_set_title): Updated to use EClippedLabels instead of GtkLabels. (e_shell_folder_title_bar_set_folder_bar_label): Likewise. * e-shell.c (impl_Shell__get_displayName): New, implementation for the `displayName' attribute. * Evolution-Shell.idl: Added readonly attribute `displayName' to get the canonicalized X11 display name for the shell. * e-shell.c (e_shell_construct): Ooops. Return `E_SHELL_CONSTRUCT_RESULT_CANNOTREGISTER' if the OAF registration fails, not `E_SHELL_CONSTRUCT_RESULT_GENERICERROR'. * e-shortcuts-view.c (rename_group_cb): Get the toplevel from the shortcuts view, not the widget. (rename_shortcut_cb): Likewise. (show_new_group_dialog): Changed to use `e_request_string()'. * evolution-test-component.c: Add the %FALSE value for the `user_creatable' field in the `folder_types' entry. * evolution-shell-client.c: New member `shortcuts_interface' in `EvolutionShellClientPrivate'. (destroy): Unref it if not CORBA_OBJECT_NIL. (init): Init to CORBA_OBJECT_NIL. (query_shell_interface): New helper function to query an interface on the shell and spit out warnings if it fails. (evolution_shell_client_construct): Use it to query the ::Activity interface. Also query the ::Shortcuts interface and set the `shortcuts_interface' member to point to it. * e-shell.c: New member `corba_shortcuts' in `EShellPrivate'. (init): Init to NULL. (setup_shortcuts_interface): Helper function to add the ::Shortcuts CORBA interface to the shell. (e_shell_construct): Call it. * e-corba-shortcuts.c, e-corba-shortcuts.h: New objects implementing the `Evolution::Shortcuts' CORBA interface. * Evolution-Shortcuts.idl: New interface for accessing the shortcuts in the shell. * e-shell.c (e_shell_get_config_db): Moved down. svn path=/trunk/; revision=11689
112 lines
3.1 KiB
Plaintext
112 lines
3.1 KiB
Plaintext
/* -*- Mode: IDL; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
|
/*
|
|
* Interface for the Evolution shell.
|
|
*
|
|
* Authors:
|
|
* Ettore Perazzoli <ettore@ximian.com>
|
|
*
|
|
* Copyright (C) 2000, 2001 Ximian, Inc.
|
|
*/
|
|
|
|
#include <Bonobo.idl>
|
|
|
|
module GNOME {
|
|
module Evolution {
|
|
interface ShellComponent;
|
|
|
|
interface FolderSelectionListener;
|
|
|
|
interface Shell : Bonobo::Unknown {
|
|
exception NotFound {};
|
|
exception UnsupportedSchema {};
|
|
exception InvalidURI {};
|
|
exception InternalError {};
|
|
exception Busy {};
|
|
|
|
typedef sequence<string> FolderTypeNameList;
|
|
|
|
/* The X display name. */
|
|
readonly attribute string displayName;
|
|
|
|
/**
|
|
* getComponentByType:
|
|
* @type: name of a valid folder type
|
|
*
|
|
* Get the shell component associated with a specific folder type.
|
|
*
|
|
* Return value: the Evolution::ShellComponent interface for the component that
|
|
* handles @type.
|
|
*/
|
|
ShellComponent getComponentByType (in string type)
|
|
raises (NotFound);
|
|
|
|
/**
|
|
* createNewView:
|
|
* @uri: URI for the view to open
|
|
*
|
|
* Return value: the new view.
|
|
*/
|
|
ShellView createNewView (in string uri)
|
|
raises (NotFound, UnsupportedSchema, InvalidURI, InternalError);
|
|
|
|
/**
|
|
* handleURI:
|
|
* @uri: URI to handle
|
|
*
|
|
* This handles the specified URI. It is different from
|
|
* `::createNewView' as it doesn't necessarily imply creating a
|
|
* new ShellView. (For example, a `mailto:' URI will invoke
|
|
* the message composer.)
|
|
*/
|
|
void handleURI (in string uri)
|
|
raises (NotFound, UnsupportedSchema, InvalidURI, InternalError);
|
|
|
|
/**
|
|
* selectUserFolder:
|
|
* @listener: a listener interface to report the answer of the user.
|
|
* @title: title for the folder selector dialog
|
|
* @default_folder: physical or `evolution:' URI for the folder that must be
|
|
* selected by default, when the dialog is popped up
|
|
* @possible_types: list of the names of the types of folders that are allowed
|
|
*
|
|
* Pop up a folder selection dialog from which the user can select a folder.
|
|
* Initially, the @default_folder is selected. The user can also create a new
|
|
* folder by using the "New..." button. The dialog only lets the user choose
|
|
* a folder whose type is listed in @possible_types.
|
|
*/
|
|
void selectUserFolder (in FolderSelectionListener listener,
|
|
in string title,
|
|
in string default_folder,
|
|
in FolderTypeNameList possible_types)
|
|
raises (Busy);
|
|
|
|
/**
|
|
* getLocalStorage:
|
|
*
|
|
* Get the interface to the local storage.
|
|
*
|
|
* FIXME: Probably we just want to be able to request this to
|
|
* the StorageRegistry. This is an ugly kludge.
|
|
*
|
|
* Return value: the `Evolution::LocalStorage' interface for
|
|
* the local storage. */
|
|
Storage getLocalStorage ();
|
|
|
|
/**
|
|
* createStorageSetView:
|
|
*
|
|
* Create a control for the storage set view. This control
|
|
* will also implement the `Evolution::StorageSetView' interface.
|
|
*
|
|
* Return value: the newly created control.
|
|
*/
|
|
Bonobo::Control createStorageSetView ();
|
|
};
|
|
|
|
interface FolderSelectionListener {
|
|
void notifySelected (in string uri, in string physical_uri);
|
|
void notifyCanceled ();
|
|
};
|
|
};
|
|
};
|