/************************************************************************* * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * Copyright 2008 by Sun Microsystems, Inc. * * OpenOffice.org - a multi-platform office productivity suite * * $RCSfile: XGrammarChecker.idl,v $ * $Revision: 1.3 $ * * This file is part of OpenOffice.org. * * OpenOffice.org is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License version 3 * only, as published by the Free Software Foundation. * * OpenOffice.org is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License version 3 for more details * (a copy is included in the LICENSE file that accompanied this code). * * You should have received a copy of the GNU Lesser General Public License * version 3 along with OpenOffice.org. If not, see * * for a copy of the LGPLv3 License. * ************************************************************************/ #ifndef __com_sun_star_linguistic2_XGrammarChecker_idl__ #define __com_sun_star_linguistic2_XGrammarChecker_idl__ #ifndef __com_sun_star_uno_XInterface_idl__ #include #endif #ifndef __com_sun_star_lang_IllegalArgumentException_idl__ #include #endif #ifndef __com_sun_star_lang_Locale_idl__ #include #endif #ifndef __com_sun_star_linguistic2_XSupportedLocales_idl__ #include #endif #ifndef __com_sun_star_text_XFlatParagraph_idl__ #include #endif //---------------------------------------Note---------------------------------- // to maintain state info (keep track of the "lifetime" of documents // and the respective current paragrah in respect to grammar checking //----------------------------------------------------------------------------- //============================================================================= module com { module sun { module star { module linguistic2 { //============================================================================= interface XGrammarChecker: com::sun::star::linguistic2::XSupportedLocales { //------------------------------------------------------------------------- /** whether is the text checked by the spellchecker @returns If yes, otherwise. */ boolean isSpellChecker( [in] com::sun::star::lang::Locale aLocale ); //------------------------------------------------------------------------- /** start checking document. This enables the grammar checker to maintain state information about the document @param nDocId the Document ID. @throws IllegalArgumentException when any argument is wrong. */ void startDocument( [in] long nDocId ) raises( com::sun::star::lang::IllegalArgumentException ); //------------------------------------------------------------------------- /** start checking paragraph @param nDocId the Document ID. @throws IllegalArgumentException when any argument is wrong. */ void startParagraph( [in] long nDocId ) raises( com::sun::star::lang::IllegalArgumentException ); //------------------------------------------------------------------------- /** end checking paragraph @param nDocId the Document ID. @throws IllegalArgumentException when any argument is wrong. */ void endParagraph( [in] long nDocId ) raises( com::sun::star::lang::IllegalArgumentException ); //------------------------------------------------------------------------- /** end checking document @param nDocId the Document ID. @throws IllegalArgumentException when any argument is wrong. */ void endDocument( [in] long nDocId ) raises( com::sun::star::lang::IllegalArgumentException ); //------------------------------------------------------------------------- /** start checking @param nDocId the Document ID. @param rFlatParaText the flat text to be checked. @param xFlatPara the flat paragraph to be checked. @param aLocale Language used in the text. @param nStartOfSentencePos Start Index of the text. @param nSuggestedSentenceEndPos Probable end position of the text. @throws IllegalArgumentException when any argument is wrong. */ void doGrammarChecking( [in] long nDocId, [in] com::sun::star::text::XFlatParagraph xFlatPara, //string rFlatParaText, [in] com::sun::star::lang::Locale aLocale, [in] long nStartOfSentencePos, [in] long nSuggestedSentenceEndPos ) raises( com::sun::star::lang::IllegalArgumentException ); //------------------------------------------------------------------------- /** get the end position of the specific text @param nDocId the Document ID. @param rFlatParaText the text. @param aLocale Language used in the text. @param nStartOfSentencePos Start Index of the text. @returns the locale for the language identified. If no language could be identified, the locale will be empty. @throws IllegalArgumentException when any argument is wrong. */ long getEndOfSentencePos( [in] long nDocId, [in] string aFlatParaText, [in] com::sun::star::lang::Locale aLocale, [in] long nStartOfSentencePos ) raises( com::sun::star::lang::IllegalArgumentException ); //------------------------------------------------------------------------- /** get the start index of the specific text @param nDocId the Document ID. @param rFlatParaText the text. @param aLocale Language used in the text. @returns the locale for the language identified. If no language could be identified, the locale will be empty. @throws IllegalArgumentException when any argument is wrong. */ long getStartOfSentencePos( [in] long nDocId, [in] string aFlatParaText, [in] com::sun::star::lang::Locale aLocale ) raises( com::sun::star::lang::IllegalArgumentException ); //------------------------------------------------------------------------- /** check whether the checker needs the previous text to judge current grammar error @returns If it needs otherwise. */ boolean requiresPreviousText(); //------------------------------------------------------------------------- /** check whether the checker has the checking dialog @returns If it has otherwise. */ boolean hasCheckingDialog(); //------------------------------------------------------------------------- /** check whether the checker has the options dialog @returns If it has otherwise. */ boolean hasOptionsDialog(); //------------------------------------------------------------------------- /** call a dialog by which users can the grammar error. @param nDocId the DocumentId. @throws IllegalArgumentException when any argument is wrong. */ void runCheckingDialog( [in] long nDocId ) raises( com::sun::star::lang::IllegalArgumentException ); //------------------------------------------------------------------------- /** call a dialog in order to display the setting options @param nDocId the DocumentId. @throws IllegalArgumentException when any argument is wrong. */ void runOptionsDialog( [in] long nDocId ) raises( com::sun::star::lang::IllegalArgumentException ); }; //============================================================================= }; }; }; }; #endif