source: trunk/third/evolution/shell/Evolution-Activity.idl @ 16770

Revision 16770, 3.2 KB checked in by ghudson, 23 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r16769, which included commits to RCS files with non-trunk default branches.
Line 
1/* -*- Mode: IDL; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
2/*
3 * Activity management for Evolution.
4 *
5 * Authors:
6 *   Ettore Perazzoli <ettore@ximian.com>
7 *
8 * Copyright (C) 2000, 2001 Ximian, Inc.
9 */
10
11module GNOME {
12module Evolution {
13
14interface Activity : Bonobo::Unknown {
15        typedef long ActivityId;
16
17        enum DialogType {
18                DIALOG_TYPE_NONE,
19                DIALOG_TYPE_MESSAGE,
20                DIALOG_TYPE_WARNING,
21                DIALOG_TYPE_INPUT,
22                DIALOG_TYPE_ERROR
23        };
24
25        enum DialogAction {
26                DIALOG_ACTION_ERROR,
27                DIALOG_ACTION_DISPLAY,
28                DIALOG_ACTION_POSTPONE
29        };
30
31        exception InvalidIcon {};
32        exception IdNotFound {};
33
34        /* Events propagated through the listener:
35
36           - "ShowDetails": The user wants to know details about the
37             progressing operation.  The component should display additional
38             information about the operation in progress, or raise a pending
39             alert dialog.
40
41           - "Cancel": The user wants the operation to be cancelled.
42         */
43
44        /**
45         * operationStarted:
46         * @component_id: Id of the component starting the operation.
47         * @information: Informative string about the operation being performed.
48         * @cancellable: Whether this operation should be cancellable by
49         * the user from the shell view.
50         * @event_listener: Listener which the events for the activity
51         * widget will be passed to.
52         * @activity_id: A unique Id for the activity, to be used to update the
53         * status of the operation.
54         * @suggest_display: Whether displaying the dialog might be a nice idea.
55         */
56        void operationStarted (in string component_id,
57                               in AnimatedIcon icon,
58                               in string information,
59                               in boolean cancellable,
60                               in Bonobo::Listener event_listener,
61                               out ActivityId activity_id,
62                               out boolean suggest_display)
63                raises (InvalidIcon);
64
65        /**
66         * operationProgressing:
67         * @activity: The unique Id for the activity whose status we want to update.
68         * @information: New informative string.  If empty, the informative string
69         * isn't changed.
70         * @progress: A float from 0.0 to 1.0 indicating the status of completion.
71         *
72         * Update the status of the specified @activity.
73         */
74        void operationProgressing (in ActivityId activity,
75                                   in string information,
76                                   in float progress)
77                raises (IdNotFound);
78
79        /**
80         * operationFinished:
81         * @activity: The unique Id for the activity that has been completed.
82         *
83         * Report that the specified @activity has been completed.  After this
84         * method is invoked, @activity is not considered to be a valid Id
85         * anymore.
86         */
87        void operationFinished (in ActivityId activity);
88
89        /**
90         * requestDialog:
91         *
92         * Inform the shell that the specified @activity requires user input
93         * from a dialog.  The returned value specifies whether the shell wants
94         * the dialog to be shown now (%DIALOG_ACTION_DISPLAY) or postponed
95         * (%DIALOG_ACTION_POSTPONE).  If the return value is
96         * %DIALOG_ACTION_POSTPONE, the component should wait for the
97         * "DisplayDialog" event before proceeding further.  In that case, the
98         * shell will flash the label related to this activity, and emit
99         * "DisplayDialog" through the event source when the user clicks on it.
100         */
101        DialogAction requestDialog (in ActivityId activity,
102                                    in DialogType dialog_type);
103};
104               
105};
106};
Note: See TracBrowser for help on using the repository browser.