diff options
Diffstat (limited to 'udkapi/com/sun/star/container/XContainerQuery.idl')
-rw-r--r-- | udkapi/com/sun/star/container/XContainerQuery.idl | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/udkapi/com/sun/star/container/XContainerQuery.idl b/udkapi/com/sun/star/container/XContainerQuery.idl new file mode 100644 index 000000000..8e99f53f7 --- /dev/null +++ b/udkapi/com/sun/star/container/XContainerQuery.idl @@ -0,0 +1,95 @@ +/* -*- 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_container_XContainerQuery_idl__ +#define __com_sun_star_container_XContainerQuery_idl__ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/container/XEnumeration.idl> +#include <com/sun/star/beans/NamedValue.idl> + + +module com { module sun { module star { module container { + +/** supports simple query feature on a container + + <p> + This interface makes it possible to create sub sets of container items + which serve specified search criterion. + <p> + */ +published interface XContainerQuery: com::sun::star::uno::XInterface +{ + /** creates a sub set of container items which match given query command + + <p> + Items of this sub set must match used query string. Format of query depends + from real implementation. Using of "param=value" pairs isn't necessary. + So it's possible to combine different parameters as one simple command + string. + <p> + + @param Query items of sub set must match to this query<br> + example:<br> + (1)<br> + query as parameter sequence to return all elements which match + the name pattern and supports a special feature; sort it ascending<br> + "name=*myname_??_;sort=ascending;feature=VISIBLE"<br> + (2)<br> + query as command to return all elements which support special feature + and match by name pattern;ascending sort is the default<br> + "getAllVisible(*myname_??_)"<br> + + @returns an sub set of container items as an enumeration. + */ + XEnumeration createSubSetEnumerationByQuery( [in] string Query ); + + /** creates a sub set of container items which supports searched properties as minimum + + <p> + It's not possible to use special commands or search specific parameters here. + You can match by properties only. Enumerated elements must provide queried + properties as minimum. Not specified properties will not be used for searching. + <p> + + @param Properties items of sub set must support given properties as minimum<br> + example:<br> + (supported)<br> + search for items which match the name pattern and supports the VISIBLE feature<br> + Parameters[0].Name = "name"<br> + Parameters[0].Value = "*myname_??_"<br> + Parameters[1].Name = "feature"<br> + Parameters[1].Value = "VISIBLE"<br> + ...<br> + (unsupported)<br> + "sort" isn't a property of a container item! + Parameters[0].Name = "sort"<br> + Parameters[0].Value = "ascending"<br> + ...<br> + + @returns an sub set of container items as an enumeration. + */ + XEnumeration createSubSetEnumerationByProperties( [in] sequence< com::sun::star::beans::NamedValue > Properties ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |