diff options
Diffstat (limited to 'offapi/com/sun/star/util/XSearchable.idl')
-rw-r--r-- | offapi/com/sun/star/util/XSearchable.idl | 112 |
1 files changed, 112 insertions, 0 deletions
diff --git a/offapi/com/sun/star/util/XSearchable.idl b/offapi/com/sun/star/util/XSearchable.idl new file mode 100644 index 000000000000..fce6b411ce9c --- /dev/null +++ b/offapi/com/sun/star/util/XSearchable.idl @@ -0,0 +1,112 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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 + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_util_XSearchable_idl__ +#define __com_sun_star_util_XSearchable_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_util_XSearchDescriptor_idl__ +#include <com/sun/star/util/XSearchDescriptor.idl> +#endif + +#ifndef __com_sun_star_container_XIndexAccess_idl__ +#include <com/sun/star/container/XIndexAccess.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module util { + +//============================================================================= + +/** enables the object to look for specified contents of the object + (in particular, for a text range which contains a specific string pattern). + + @example + in a <type scope="com::sun::star::text">TextDocument</type>: + set all "search for" to bold using findFirst()/findNext(): + + <listing> + xSearchDescr = xDocument.createSearchDescriptor() + xSearchDescr.SearchString = "search for" + xSearchDescr.SearchCaseSensitive = <TRUE/> + xSearchDescr.SearchWords = <TRUE/> + xFound = xDocument.findFirst( xSearchDescr ) + do while not IsNull(xFound) + xFound.CharWeight = com.sun.star.awt.FontWeight.BOLD + xFound = xDocument.findNext( xFound.End, xSearchDescr ) + loop + </listing> + + */ +published interface XSearchable: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + /** creates a <type>SearchDescriptor</type> which contains properties that + specify a search in this container.@see SearchDescriptor + */ + com::sun::star::util::XSearchDescriptor createSearchDescriptor(); + + //------------------------------------------------------------------------- + /** searches the contained texts for all occurrences of whatever is specified.@see SearchDescriptor + */ + com::sun::star::container::XIndexAccess findAll( [in] com::sun::star::util::XSearchDescriptor xDesc ); + + //------------------------------------------------------------------------- + /** searches the contained texts for the next occurrence of whatever is specified. + + @returns + the position within the component, e.g. a <type scope="com::sun::star::text">XTextRange</type> + which determines the found elements. + + @see SearchDescriptor + */ + com::sun::star::uno::XInterface findFirst( [in] com::sun::star::util::XSearchDescriptor xDesc ); + + //------------------------------------------------------------------------- + /** searches the contained texts for the next occurrence of whatever is specified. + + @param xStartAt + represents a position within the component at which the search continues. + This position is returned by <method>XSearchable::findFirst</method> or + the previous <method>XSearchable::findNext</method>. + + @see SearchDescriptor + */ + com::sun::star::uno::XInterface findNext( [in] com::sun::star::uno::XInterface xStartAt, + [in] com::sun::star::util::XSearchDescriptor xDesc ); + +}; + +//============================================================================= + +}; }; }; }; + +#endif |