From 3a96d74c2bcd6c646c8176d88e82836aeab5d9bf Mon Sep 17 00:00:00 2001 From: Not Zed Date: Wed, 4 Feb 2004 10:55:25 +0000 Subject: ** See bug #53683. 2004-02-04 Not Zed ** See bug #53683. * Evolution-Component.idl: added EvolutionComponent::quit() call. * main.c (quit_box_new): removed, dont show quit box anymore at the end, we've already shutdown by now with the new shutdown sequence. * e-shell-window-commands.c (command_quit): call e_shell_quit to quit. * e-shell.c (e_shell_prepare_for_quit): renamed es_run_quit, now internal, and a gtktimeout function, so return code inverted. (e_shell_quit): new public entry, find out if we can shutdown, if so, then trigger a shutdown. (e_shell_request_close_window): just call e_shell_quit to exit when we've run out of windows. (e_shell_quit): desensitise all of the app windows before running shutdown. looks a bit weird, but not doing so looks worse. svn path=/trunk/; revision=24609 --- shell/Evolution-Component.idl | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'shell/Evolution-Component.idl') diff --git a/shell/Evolution-Component.idl b/shell/Evolution-Component.idl index dc23fc40be..873cd6b7d0 100644 --- a/shell/Evolution-Component.idl +++ b/shell/Evolution-Component.idl @@ -12,7 +12,6 @@ module GNOME { module Evolution { - /* A type of item that the component can create when asked by the user, e.g. a mail message or an appointment. */ struct CreatableItemType { @@ -29,7 +28,6 @@ module Evolution { exception Failed {}; exception UnknownType {}; - /*** Upgrade path. ***/ boolean upgradeFromVersion (in short major, in short minor, in short revision); @@ -43,10 +41,17 @@ module Evolution { out Bonobo::Control statusbar_control) raises (Failed); - /* Request the component to quit. The component will return TRUE - if it agrees to quit and FALSE if it doesn't want to. */ + /* Check if the component can quit. + Do not perform any quit-related tasks however. + May be called multiple times, depending on user interaction. */ boolean requestQuit (); + /* Ask the component to quit. Returns TRUE when the + component has completed any closing-down tasks, and + is ready to exit(). This will be called repeatedly + at intervals until it returns TRUE. */ + boolean quit (); + /* Notify the component of whether the shell is currently running in interactive mode or not. (I.e. basically, whether there are any Evolution windows on the screen.) -- cgit