blob: 0b4ee2cc521b448af0d561daa7095335669a12e8 [file] [log] [blame]
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef __com_sun_star_util_XNumberFormatter_idl__
#define __com_sun_star_util_XNumberFormatter_idl__
#ifndef __com_sun_star_uno_XInterface_idl__
#include <com/sun/star/uno/XInterface.idl>
#endif
#ifndef __com_sun_star_util_Color_idl__
#include <com/sun/star/util/Color.idl>
#endif
#ifndef __com_sun_star_util_XNumberFormatsSupplier_idl__
#include <com/sun/star/util/XNumberFormatsSupplier.idl>
#endif
#ifndef __com_sun_star_util_NotNumericException_idl__
#include <com/sun/star/util/NotNumericException.idl>
#endif
#ifndef __com_sun_star_util_Color_idl__
#include <com/sun/star/util/Color.idl>
#endif
//=============================================================================
module com { module sun { module star { module util {
//=============================================================================
/** represents a number formatter.
*/
published interface XNumberFormatter: com::sun::star::uno::XInterface
{
//-------------------------------------------------------------------------
/** attaches an <type>XNumberFormatsSupplier</type> to this
<type>NumberFormatter</type>.
<p>This <type>NumberFormatter</type> will only use the <type>NumberFormats</type>
specified in the attached <type>XNumberFormatsSupplier</type>. Without an attached
<type>XNumberFormatsSupplier</type>, no formatting is possible.</p>
*/
void attachNumberFormatsSupplier( [in] com::sun::star::util::XNumberFormatsSupplier xSupplier );
//-------------------------------------------------------------------------
/** @returns
the attached <type>XNumberFormatsSupplier</type>.
*/
com::sun::star::util::XNumberFormatsSupplier getNumberFormatsSupplier();
//-------------------------------------------------------------------------
/** detects the number format in a string which contains a formatted number.
*/
long detectNumberFormat( [in] long nKey,
[in] string aString )
raises( com::sun::star::util::NotNumericException );
//-------------------------------------------------------------------------
/** converts a string which contains a formatted number into a number.
<p>If this is a text format, the string will not be converted.</p>
*/
double convertStringToNumber( [in] long nKey,
[in] string aString )
raises( com::sun::star::util::NotNumericException );
//-------------------------------------------------------------------------
/** converts a number into a string.
*/
string convertNumberToString( [in] long nKey,
[in] double fValue );
//-------------------------------------------------------------------------
/** @returns
the color which is specified for the given value in the number format,
which is otherwise the value of <var>aDefaultColor</var>.
*/
com::sun::star::util::Color queryColorForNumber( [in] long nKey,
[in] double fValue,
[in] com::sun::star::util::Color aDefaultColor );
//-------------------------------------------------------------------------
/** converts a string into another string.
*/
string formatString( [in] long nKey,
[in] string aString );
//-------------------------------------------------------------------------
/** @returns
the color which is specified for the given string in the number format,
which is otherwise the value of <var>aDefaultColor</var>.
*/
com::sun::star::util::Color queryColorForString( [in] long nKey,
[in] string aString,
[in] com::sun::star::util::Color aDefaultColor );
//-------------------------------------------------------------------------
/** converts a number into a string with the specified format.
<p>This string can always be converted back to a number using the same
format.
</p>
*/
string getInputString( [in] long nKey,
[in] double fValue );
};
//=============================================================================
}; }; }; };
#endif