diff options
Diffstat (limited to 'offapi/com/sun/star/linguistic2/XDictionaryList.idl')
-rw-r--r-- | offapi/com/sun/star/linguistic2/XDictionaryList.idl | 232 |
1 files changed, 232 insertions, 0 deletions
diff --git a/offapi/com/sun/star/linguistic2/XDictionaryList.idl b/offapi/com/sun/star/linguistic2/XDictionaryList.idl new file mode 100644 index 000000000..63ec6a0ae --- /dev/null +++ b/offapi/com/sun/star/linguistic2/XDictionaryList.idl @@ -0,0 +1,232 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_linguistic2_XDictionaryList_idl__ +#define __com_sun_star_linguistic2_XDictionaryList_idl__ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/linguistic2/XDictionary.idl> +#include <com/sun/star/linguistic2/XDictionaryListEventListener.idl> + + +module com { module sun { module star { module linguistic2 { + +/** is used to manage and maintain a list of dictionaries. + + <P>A dictionary-list may be given to a spell checker or hyphenator + service implementation on their creation in order to supply a set + of dictionaries and additional information to be used for + those purposes.</P> + + @see com::sun::star::linguistic2::XDictionary + @see com::sun::star::uno::XInterface +*/ +published interface XDictionaryList : com::sun::star::uno::XInterface +{ + /** + @returns + the number of dictionaries in the list. + */ + short getCount(); + + /** + @returns + a sequence with an entry for every dictionary + in the list. + + @see com::sun::star::linguistic2::XDictionary + */ + sequence<com::sun::star::linguistic2::XDictionary> getDictionaries(); + + /** searches the list for a dictionary with a given name. + + @returns + the XDictionary with the specified name. If no such + dictionary exists, `NULL` will be returned. + + @param aDictionaryName + specifies the name of the dictionary to look for. + + @see com::sun::star::linguistic2::XDictionary + */ + com::sun::star::linguistic2::XDictionary getDictionaryByName( + [in] string aDictionaryName ); + + /** adds a dictionary to the list. + + <P>Additionally, the dictionary-list will add itself to the list of dictionary + event listeners of that dictionary.</P> + + @returns + `TRUE` if the dictionary was added successfully, + `FALSE` otherwise. + + @param xDictionary + the dictionary to be added. + + @see com::sun::star::linguistic2::XDictionary + */ + boolean addDictionary( + [in] com::sun::star::linguistic2::XDictionary xDictionary ); + + /** removes a single dictionary from the list. + + <P>If the dictionary is still active, it will be deactivated + first. The dictionary-list will remove itself from the list of + dictionary event listeners of the dictionary.</P> + + @returns + `TRUE` if the dictionary was removed successfully, `FALSE` + otherwise. + + @param xDictionary + dictionary to be removed from the list of dictionaries. + + @see com::sun::star::linguistic2::XDictionary + */ + boolean removeDictionary( + [in] com::sun::star::linguistic2::XDictionary xDictionary ); + + /** adds an entry to the list of dictionary-list event listeners. + + <P>On dictionary-list events, each entry in the listener list will + be notified via a call to + com::sun::star::linguistic2::XDictionaryListEventListener::processDictionaryListEvent().</P> + + @returns + `TRUE` if the entry was made, `FALSE` otherwise. + If com::sun::star::lang::XEventListener::disposing() + was called before, it will always fail. + + @param xListener + the object to be notified of dictionary-list events. + + @param bReceiveVerbose + `TRUE` if the listener requires more detailed event + notification than usual. + + @see com::sun::star::linguistic2::XDictionaryListEventListener + @see com::sun::star::linguistic2::XDictionaryListEvent + */ + boolean addDictionaryListEventListener( + [in] com::sun::star::linguistic2::XDictionaryListEventListener xListener, + [in] boolean bReceiveVerbose ); + + /** removes an entry from the list of dictionary-list event listeners. + + @returns + `TRUE` if the object to be removed was found and removed, + `FALSE` otherwise. + + @param xListener + the object to be removed from the listener list. + + @see com::sun::star::linguistic2::XDictionaryListEventListener + @see com::sun::star::linguistic2::XDictionaryListEvent + */ + boolean removeDictionaryListEventListener( + [in] com::sun::star::linguistic2::XDictionaryListEventListener xListener ); + + /** increases request level for event buffering by one. + + <P>The request level for event buffering is an integer + counter that is initially set to 0. + As long as the request level is not 0, events will be buffered + until the next flushing of the buffer.</P> + + @returns + the current request level for event buffering. + + @see com::sun::star::linguistic2::XDictionaryListEvent + @see com::sun::star::linguistic2::XDictionaryListEventListener + @see com::sun::star::linguistic2::XDictionaryList::endCollectEvents() + @see com::sun::star::linguistic2::XDictionaryList::flushEvents() + */ + short beginCollectEvents(); + + /** flushes the event buffer and decreases the request level for + event buffering by one. + + <P>There should be one matching endCollectEvents call for every + beginCollectEvents call. Usually you will group these around + some code where you do not wish to get notified of every single + event.</P> + + @returns + the current request level for event buffering. + + @see com::sun::star::linguistic2::XDictionaryListEvent + @see com::sun::star::linguistic2::XDictionaryListEventListener + @see com::sun::star::linguistic2::XDictionaryList::beginCollectEvents() + @see com::sun::star::linguistic2::XDictionaryList::flushEvents() + */ + short endCollectEvents(); + + /** notifies the listeners of all buffered events and then clears + that buffer. + + @returns + the current request level for event buffering. + + @see com::sun::star::linguistic2::XDictionaryListEvent + @see com::sun::star::linguistic2::XDictionaryListEventListener + @see com::sun::star::linguistic2::XDictionaryList::beginCollectEvents() + @see com::sun::star::linguistic2::XDictionaryList::endCollectEvents() + */ + short flushEvents(); + + /** creates a new dictionary. + + @returns + an empty dictionary with the given name, language and type. + `NULL` on failure. + + @param aName + is the name of the dictionary (should be unique). + + @param aLocale + defines the language of the dictionary. + Use an empty aLocale for dictionaries which may contain + entries of all languages. + + @param eDicType + specifies the type of the dictionary. + + @param aURL + is the URL of the location where the dictionary is persistent, + if the XStorable interface is supported. + It may be empty, which means the dictionary will not be persistent. + + @see com::sun::star::linguistic2::XDictionary + @see com::sun::star::lang::Locale + @see com::sun::star::linguistic2::DictionaryType + */ + com::sun::star::linguistic2::XDictionary createDictionary( + [in] string aName, + [in] com::sun::star::lang::Locale aLocale, + [in] com::sun::star::linguistic2::DictionaryType eDicType, + [in] string aURL ); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |