/* -*- 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 .
*/
module com { module sun { module star { module util {
/** describes what and how to search within a container.
*/
published service SearchDescriptor
{
interface com::sun::star::util::XSearchDescriptor;
interface com::sun::star::beans::XPropertySet;
/** If `TRUE`, the search is done backwards in the document.
*/
[property] boolean SearchBackwards;
/** If `TRUE`, the case of the letters is important for the match.
*/
[property] boolean SearchCaseSensitive;
/** If `TRUE`, only complete words will be found.
*/
[property] boolean SearchWords;
/** If `TRUE`, the search string is evaluated as a regular expression.
<p> SearchRegularExpression, SearchWildcard and SearchSimilarity
are mutually exclusive, only one can be `TRUE` at the same time. </p>
*/
[property] boolean SearchRegularExpression;
/** If `TRUE`, it is searched for positions where the paragraph style with
the name of the search pattern is applied.
*/
[property] boolean SearchStyles;
/** If `TRUE`, a "similarity search" is performed.
<p>In the case of a similarity search, the following properties
specify the kind of similarity:
</p>
<ul>
<li>SearchSimilarityRelax
</li>
<li>SearchSimilarityRemove
</li>
<li>SearchSimilarityAdd
</li>
<li>SearchSimilarityExchange
</li>
</ul>
<p> SearchRegularExpression, SearchWildcard and SearchSimilarity
are mutually exclusive, only one can be `TRUE` at the same time. </p>
*/
[property] boolean SearchSimilarity;
/** If `TRUE`, all similarity rules are applied together.
<p>In the case of a relaxed similarity search, the following
properties are applied together:
</p>
<ul>
<li>SearchSimilarityRemove
</li>
<li>SearchSimilarityAdd
</li>
<li>SearchSimilarityExchange
</li>
</ul>
*/
[property] boolean SearchSimilarityRelax;
/** This property specifies the number of characters that may be
ignored to match the search pattern.
*/
[property] short SearchSimilarityRemove;
/** specifies the number of characters that must be
added to match the search pattern.
*/
[property] short SearchSimilarityAdd;
/** This property specifies the number of characters that must
be replaced to match the search pattern.
*/
[property] short SearchSimilarityExchange;
/** If `TRUE`, the search string is evaluated as a wildcard pattern.
<p> Wildcards are '*' (asterisk) for any sequence of characters,
including an empty sequence, and '?' (question mark) for exactly
one character. Escape character is '\' (U+005C REVERSE SOLIDUS)
aka backslash, it escapes the special meaning of a question
mark, asterisk or escape character that follows immediately
after the escape character. </p>
<p> SearchRegularExpression, SearchWildcard and SearchSimilarity
are mutually exclusive, only one can be `TRUE` at the same time. </p>
@since LibreOffice 5.2
*/
[optional, property] boolean SearchWildcard;
/** Specifies the character used to escape special characters in wildcards.
@since LibreOffice 24.2
*/
[optional, property] long WildcardEscapeCharacter;
};
}; }; }; };
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */