1d1766043SAndrew Rist/************************************************************** 2*58a988d9Smseidel * 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 10*58a988d9Smseidel * 11d1766043SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*58a988d9Smseidel * 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. 19*58a988d9Smseidel * 20d1766043SAndrew Rist *************************************************************/ 21d1766043SAndrew Rist 22d1766043SAndrew Rist 23*58a988d9Smseidel 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 33*58a988d9Smseidel module com { module sun { module star { module task { 34cdf0e10cSrcweir 35cdf0e10cSrcweir//============================================================================= 36cdf0e10cSrcweir/** controls a status indicator which displays progress of 37*58a988d9Smseidel longer actions to the user 38cdf0e10cSrcweir 39*58a988d9Smseidel <p> 40*58a988d9Smseidel Such objects are provided by a <type>XStatusIndicatorFactory</type>. 41*58a988d9Smseidel </p> 42cdf0e10cSrcweir 43*58a988d9Smseidel @see XStatusIndicatorFactory 44cdf0e10cSrcweir */ 45cdf0e10cSrcweirpublished interface XStatusIndicator: com::sun::star::uno::XInterface 46cdf0e10cSrcweir{ 47cdf0e10cSrcweir //------------------------------------------------------------------------- 48*58a988d9Smseidel /** initialize and start the progress 49*58a988d9Smseidel 50*58a988d9Smseidel <p> 51*58a988d9Smseidel It activates a new created or reactivate an already used indicator 52*58a988d9Smseidel (must be finished by calling <member>XStatusIndicator::end()</member> 53*58a988d9Smseidel before!). By the way it's possible to set first progress description 54*58a988d9Smseidel and the possible range of progress value. That means that a progress 55*58a988d9Smseidel can runs from 0 to <var>Range</var>. 56*58a988d9Smseidel </p> 57*58a988d9Smseidel 58*58a988d9Smseidel @param Text 59*58a988d9Smseidel initial value for progress description for showing 60*58a988d9Smseidel Value can be updated by calling <member>XStatusIndicator::setText()</member>. 61*58a988d9Smseidel 62*58a988d9Smseidel @param Range 63*58a988d9Smseidel means the maximum value of the progress which can be set by 64*58a988d9Smseidel calling <member>XStatusIndicator::setValue()</member>. 65cdf0e10cSrcweir */ 66*58a988d9Smseidel [oneway] void start( 67*58a988d9Smseidel [in] string Text, 68*58a988d9Smseidel [in] long Range); 69cdf0e10cSrcweir 70cdf0e10cSrcweir //------------------------------------------------------------------------- 71*58a988d9Smseidel /** stop the progress 72*58a988d9Smseidel 73*58a988d9Smseidel <p> 74*58a988d9Smseidel Further calls of <member>XStatusIndicator::setText()</member>, 75*58a988d9Smseidel <member>XStatusIndicator::setValue()</member> or 76*58a988d9Smseidel <member>XStatusIndicator::reset()</member> must be ignored. 77*58a988d9Smseidel Only <member>XStatusIndicator::start()</member> can reactivate this 78*58a988d9Smseidel indicator. 79*58a988d9Smseidel It's not allowed to destruct the indicator inside this method. 80*58a988d9Smseidel The instance must be gone by using ref count or disposing. 81*58a988d9Smseidel </p> 82*58a988d9Smseidel */ 83cdf0e10cSrcweir [oneway] void end(); 84cdf0e10cSrcweir 85cdf0e10cSrcweir //------------------------------------------------------------------------- 86*58a988d9Smseidel /** update progress description 87cdf0e10cSrcweir 88*58a988d9Smseidel <p> 89*58a988d9Smseidel Initial value can be set during starting of the progress by calling 90*58a988d9Smseidel <member>XStatusIndicator::start()</member>. 91*58a988d9Smseidel Stopped indicators must ignore this call. 92*58a988d9Smseidel </p> 93cdf0e10cSrcweir 94*58a988d9Smseidel @param Text 95*58a988d9Smseidel new value for progress description which should be shown now 96cdf0e10cSrcweir */ 97*58a988d9Smseidel [oneway] void setText( [in] string Text ); 98cdf0e10cSrcweir 99cdf0e10cSrcweir //------------------------------------------------------------------------- 100*58a988d9Smseidel /** update progress value 101cdf0e10cSrcweir 102*58a988d9Smseidel <p> 103*58a988d9Smseidel Wrong values must be ignored and stopped indicators must ignore this 104*58a988d9Smseidel call generally. 105*58a988d9Smseidel </p> 106cdf0e10cSrcweir 107*58a988d9Smseidel @param Value 108*58a988d9Smseidel new value for progress which should be shown now 109*58a988d9Smseidel Must fit the range [0..Range] which was set during 110*58a988d9Smseidel <member>XStatusIndicator::start()</member>. 111cdf0e10cSrcweir */ 112*58a988d9Smseidel [oneway] void setValue( [in] long Value ); 113cdf0e10cSrcweir 114cdf0e10cSrcweir //------------------------------------------------------------------------- 115*58a988d9Smseidel /** clear progress value and description 116cdf0e10cSrcweir 117*58a988d9Smseidel <p> 118*58a988d9Smseidel Calling of setValue(0) and setText("") should do the same. 119*58a988d9Smseidel Stopped indicators must ignore this call. 120*58a988d9Smseidel </p> 121cdf0e10cSrcweir */ 122cdf0e10cSrcweir [oneway] void reset(); 123cdf0e10cSrcweir}; 124cdf0e10cSrcweir 125cdf0e10cSrcweir}; }; }; }; 126cdf0e10cSrcweir 127cdf0e10cSrcweir#endif 128