xref: /trunk/main/offapi/com/sun/star/task/XStatusIndicator.idl (revision c3b7da30377815802429c889b153852f1ce44980)
1d1766043SAndrew Rist/**************************************************************
2cdf0e10cSrcweir *
3d1766043SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4d1766043SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5d1766043SAndrew Rist * distributed with this work for additional information
6d1766043SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7d1766043SAndrew Rist * to you under the Apache License, Version 2.0 (the
8d1766043SAndrew Rist * "License"); you may not use this file except in compliance
9d1766043SAndrew Rist * with the License.  You may obtain a copy of the License at
10cdf0e10cSrcweir *
11d1766043SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12cdf0e10cSrcweir *
13d1766043SAndrew Rist * Unless required by applicable law or agreed to in writing,
14d1766043SAndrew Rist * software distributed under the License is distributed on an
15d1766043SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16d1766043SAndrew Rist * KIND, either express or implied.  See the License for the
17d1766043SAndrew Rist * specific language governing permissions and limitations
18d1766043SAndrew Rist * under the License.
19cdf0e10cSrcweir *
20d1766043SAndrew Rist *************************************************************/
21d1766043SAndrew Rist
22d1766043SAndrew Rist
23*c3b7da30Smseidel
24cdf0e10cSrcweir#ifndef __com_sun_star_task_XStatusIndicator_idl__
25cdf0e10cSrcweir#define __com_sun_star_task_XStatusIndicator_idl__
26cdf0e10cSrcweir
27cdf0e10cSrcweir#ifndef __com_sun_star_uno_XInterface_idl__
28cdf0e10cSrcweir#include <com/sun/star/uno/XInterface.idl>
29cdf0e10cSrcweir#endif
30cdf0e10cSrcweir
31cdf0e10cSrcweir//=============================================================================
32cdf0e10cSrcweir
33cdf0e10cSrcweir module com { module sun { module star { module task {
34cdf0e10cSrcweir
35cdf0e10cSrcweir//=============================================================================
36cdf0e10cSrcweir/** controls a status indicator which displays progress of
37cdf0e10cSrcweir    longer actions to the user
38cdf0e10cSrcweir
39cdf0e10cSrcweir    <p>
40cdf0e10cSrcweir    Such objects are provided by a <type>XStatusIndicatorFactory</type>.
41cdf0e10cSrcweir    </p>
42cdf0e10cSrcweir
43cdf0e10cSrcweir    @see XStatusIndicatorFactory
44cdf0e10cSrcweir */
45cdf0e10cSrcweirpublished interface XStatusIndicator: com::sun::star::uno::XInterface
46cdf0e10cSrcweir{
47cdf0e10cSrcweir    //-------------------------------------------------------------------------
48cdf0e10cSrcweir    /** initialize and start the progress
49cdf0e10cSrcweir
50cdf0e10cSrcweir        <p>
51*c3b7da30Smseidel        It activates a new created or reactivate an already used indicator
52cdf0e10cSrcweir        (must be finished by calling <member>XStatusIndicator::end()</member>
53cdf0e10cSrcweir        before!). By the way it's possible to set first progress description
54cdf0e10cSrcweir        and the possible range of progress value. That means that a progress
55cdf0e10cSrcweir        can runs from 0 to <var>Range</var>.
56cdf0e10cSrcweir        </p>
57cdf0e10cSrcweir
58cdf0e10cSrcweir        @param Text
59cdf0e10cSrcweir            initial value for progress description for showing
60cdf0e10cSrcweir            Value can be updated by calling <member>XStatusIndicator::setText()</member>.
61cdf0e10cSrcweir
62cdf0e10cSrcweir        @param Range
63*c3b7da30Smseidel            means the maximum value of the progress which can be set by
64cdf0e10cSrcweir            calling <member>XStatusIndicator::setValue()</member>.
65cdf0e10cSrcweir     */
66cdf0e10cSrcweir    [oneway] void start(
67cdf0e10cSrcweir        [in] string Text,
68cdf0e10cSrcweir        [in] long Range);
69cdf0e10cSrcweir
70cdf0e10cSrcweir    //-------------------------------------------------------------------------
71cdf0e10cSrcweir    /** stop the progress
72cdf0e10cSrcweir
73cdf0e10cSrcweir        <p>
74cdf0e10cSrcweir        Further calls of <member>XStatusIndicator::setText()</member>,
75cdf0e10cSrcweir        <member>XStatusIndicator::setValue()</member> or
76cdf0e10cSrcweir        <member>XStatusIndicator::reset()</member> must be ignored.
77cdf0e10cSrcweir        Only <member>XStatusIndicator::start()</member> can reactivate this
78cdf0e10cSrcweir        indicator.
79cdf0e10cSrcweir        It's not allowed to destruct the indicator inside this method.
80cdf0e10cSrcweir        The instance must be gone by using ref count or disposing.
81cdf0e10cSrcweir        </p>
82cdf0e10cSrcweir    */
83cdf0e10cSrcweir    [oneway] void end();
84cdf0e10cSrcweir
85cdf0e10cSrcweir    //-------------------------------------------------------------------------
86cdf0e10cSrcweir    /** update progress description
87cdf0e10cSrcweir
88cdf0e10cSrcweir        <p>
89cdf0e10cSrcweir        Initial value can be set during starting of the progress by calling
90cdf0e10cSrcweir        <member>XStatusIndicator::start()</member>.
91cdf0e10cSrcweir        Stopped indicators must ignore this call.
92cdf0e10cSrcweir        </p>
93cdf0e10cSrcweir
94cdf0e10cSrcweir        @param Text
95cdf0e10cSrcweir            new value for progress description which should be shown now
96cdf0e10cSrcweir     */
97cdf0e10cSrcweir    [oneway] void setText( [in] string Text );
98cdf0e10cSrcweir
99cdf0e10cSrcweir    //-------------------------------------------------------------------------
100cdf0e10cSrcweir    /** update progress value
101cdf0e10cSrcweir
102cdf0e10cSrcweir        <p>
103cdf0e10cSrcweir        Wrong values must be ignored and stopped indicators must ignore this
104a893be29SPedro Giffuni        call generally.
105cdf0e10cSrcweir        </p>
106cdf0e10cSrcweir
107cdf0e10cSrcweir        @param Value
108cdf0e10cSrcweir            new value for progress which should be shown now
109cdf0e10cSrcweir            Must fit the range [0..Range] which was set during
110cdf0e10cSrcweir            <member>XStatusIndicator::start()</member>.
111cdf0e10cSrcweir     */
112cdf0e10cSrcweir    [oneway] void setValue( [in] long Value );
113cdf0e10cSrcweir
114cdf0e10cSrcweir    //-------------------------------------------------------------------------
115cdf0e10cSrcweir    /** clear progress value and description
116cdf0e10cSrcweir
117cdf0e10cSrcweir        <p>
118cdf0e10cSrcweir        Calling of setValue(0) and setText("") should do the same.
119cdf0e10cSrcweir        Stopped indicators must ignore this call.
120cdf0e10cSrcweir        </p>
121cdf0e10cSrcweir     */
122cdf0e10cSrcweir    [oneway] void reset();
123cdf0e10cSrcweir};
124cdf0e10cSrcweir
125cdf0e10cSrcweir}; }; }; };
126cdf0e10cSrcweir
127cdf0e10cSrcweir#endif
128