| /************************************************************** |
| * |
| * 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_smarttags_XSmartTagRecognizer_idl__ |
| #define __com_sun_star_smarttags_XSmartTagRecognizer_idl__ |
| |
| #ifndef __com_sun_star_uno_XInitialization_idl__ |
| #include <com/sun/star/lang/XInitialization.idl> |
| #endif |
| |
| #ifndef __com_sun_star_lang_Locale_idl__ |
| #include <com/sun/star/lang/Locale.idl> |
| #endif |
| |
| #ifndef __com_sun_star_i18n_XBreakIterator_idl__ |
| #include <com/sun/star/i18n/XBreakIterator.idl> |
| #endif |
| |
| #ifndef __com_sun_star_smarttags_SmartTagRecognizerMode_idl__ |
| #include <com/sun/star/smarttags/SmartTagRecognizerMode.idl> |
| #endif |
| |
| #ifndef __com_sun_star_text_XTextMarkup_idl__ |
| #include <com/sun/star/text/XTextMarkup.idl> |
| #endif |
| |
| #ifndef __com_sun_star_frame_XController_idl__ |
| #include <com/sun/star/frame/XController.idl> |
| #endif |
| |
| #ifndef __com_sun_star_lang_IndexOutOfBoundsException_idl__ |
| #include <com/sun/star/lang/IndexOutOfBoundsException.idl> |
| #endif |
| |
| #ifndef __com_sun_star_text_XTextRange_idl__ |
| #include <com/sun/star/text/XTextRange.idl> |
| #endif |
| |
| |
| //============================================================================= |
| |
| module com { module sun { module star { module smarttags { |
| |
| //============================================================================= |
| |
| /** |
| provides access to a smart tag recognizer. |
| |
| @since OpenOffice 2.3 |
| */ |
| |
| interface XSmartTagRecognizer: com::sun::star::lang::XInitialization |
| { |
| //------------------------------------------------------------------------- |
| /** obtains a name that describes this recognizer component. |
| |
| @param aLocale |
| Is used for localization of the name. |
| |
| @return |
| the name of the recognizer component. |
| */ |
| string getName( [in] ::com::sun::star::lang::Locale aLocale ); |
| |
| |
| //------------------------------------------------------------------------- |
| /** obtains a detailed description of this recognizer component. |
| |
| @param aLocale |
| Is used for localization of the description. |
| |
| @return |
| the description of the recognizer component. |
| */ |
| string getDescription( [in] ::com::sun::star::lang::Locale aLocale ); |
| |
| |
| //------------------------------------------------------------------------- |
| /** The number of smart tag types supported by this recognizer |
| component. |
| */ |
| [attribute, readonly] long SmartTagCount; |
| |
| |
| //------------------------------------------------------------------------- |
| /** obtains the name of one specific smart tag type supported by |
| this recognizer component. |
| |
| @param nSmartTagIndex |
| Index of the wanted smart tag type. Value needs to be |
| between 0 and the number of smarttags available |
| (exclusively). |
| |
| @return |
| the unique name of the smart tag type. Smart tag type |
| names are always in the format of namespaceURI#tagname. |
| |
| @throws com::sun::star::lang::IndexOutOfBoundsException |
| if nSmartTagIndex is greater than SmartTagCount |
| */ |
| string getSmartTagName( [in] long nSmartTagIndex ) |
| raises( com::sun::star::lang::IndexOutOfBoundsException ); |
| |
| |
| //------------------------------------------------------------------------- |
| /** obtains the URL that can be used to download new or updated |
| recognizers. |
| |
| @param nSmartTagIndex |
| Index of the wanted smart tag type. Value needs to be |
| between 0 and the number of smarttags available |
| (exclusively). |
| |
| @return |
| the download URL. |
| |
| @throws com::sun::star::lang::IndexOutOfBoundsException |
| if nSmartTagIndex is greater than SmartTagCount |
| */ |
| string getSmartTagDownloadURL( [in] long nSmartTagIndex ) |
| raises( com::sun::star::lang::IndexOutOfBoundsException ); |
| |
| |
| //------------------------------------------------------------------------- |
| /** recognizes smart tags. |
| |
| @param aText |
| The text that should be scanned by the recognizer. aText |
| is UFT16 encoded. |
| |
| @param nStart |
| Denotes the start position of the region to scan. |
| |
| @param nLength |
| Denotes the length of the text to scan. |
| |
| @param eDataType |
| This value indicates the type of the passed text. |
| |
| @param aLocale |
| Is used to indicate the language of the passed text. |
| |
| @param xTextMarkup |
| This object is used to submit any recognized smart tags |
| to the calling application. |
| |
| @param aApplicationName |
| A string containing the name of the calling application. |
| |
| @param xController |
| The current controller of the document. |
| |
| @param xTokenizer |
| This can be used to tokenize the string to recognize. |
| */ |
| void recognize( [in] string aText, |
| [in] long nStart, |
| [in] long nLength, |
| [in] SmartTagRecognizerMode eDataType, |
| [in] com::sun::star::lang::Locale aLocale, |
| [in] com::sun::star::text::XTextMarkup xTextMarkup, |
| [in] string aApplicationName, |
| [in] com::sun::star::frame::XController xController, |
| [in] com::sun::star::i18n::XBreakIterator xTokenizer ); |
| |
| //------------------------------------------------------------------------- |
| /** indicates whether there is a property page for a smart tag type. |
| |
| @param nSmartTagIndex |
| Index of the wanted smart tag type. Value needs to be |
| between 0 and the number of smarttags available |
| (exclusively). |
| |
| @param aLocale |
| Is used for localization of the property page. |
| |
| @return |
| true if there is a property page matching the requested |
| smart tag type and locale. |
| |
| @throws com::sun::star::lang::IndexOutOfBoundsException |
| if nSmartTagIndex is greater than SmartTagCount |
| */ |
| boolean hasPropertyPage( [in] long nSmartTagIndex, |
| [in] ::com::sun::star::lang::Locale aLocale ) |
| raises( com::sun::star::lang::IndexOutOfBoundsException ); |
| |
| |
| //------------------------------------------------------------------------- |
| /** launches the property page for a smart tag type. |
| |
| @param nSmartTagIndex |
| Index of the wanted smart tag type. Value needs to be |
| between 0 and the number of smarttags available |
| (exclusively). |
| |
| @param aLocale |
| Is used for localization of the property page. |
| |
| @throws com::sun::star::lang::IndexOutOfBoundsException |
| if nSmartTagIndex is greater than SmartTagCount |
| */ |
| void displayPropertyPage( [in] long nSmartTagIndex, |
| [in] ::com::sun::star::lang::Locale aLocale ) |
| raises( com::sun::star::lang::IndexOutOfBoundsException ); |
| |
| }; |
| |
| }; }; }; }; |
| |
| #endif |