LibreOffice Module vcl (master) 1
VectorGraphicSearch.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 *
9 */
10
11#pragma once
12
13#include <vcl/graph.hxx>
15#include <vcl/dllapi.h>
16
19
20#include <memory>
21
23{
24 Begin,
25 End
26};
27
29{
33
35 : meStartPosition(SearchStartPosition::Begin)
36 , mbMatchCase(false)
37 , mbMatchWholeWord(false)
38 {
39 }
40
41 VectorGraphicSearchOptions(SearchStartPosition eStartPosition, bool bMatchCase,
42 bool bMatchWholeWord)
43 : meStartPosition(eStartPosition)
44 , mbMatchCase(bMatchCase)
45 , mbMatchWholeWord(bMatchWholeWord)
46 {
47 }
48};
49
51{
52private:
53 class Implementation;
54 std::unique_ptr<Implementation> mpImplementation;
56
57 bool searchPDF(std::shared_ptr<VectorGraphicData> const& rData);
58
59public:
62 bool search(OUString const& rSearchString,
64 basegfx::B2DSize pageSize();
65 bool next();
66 bool previous();
67 int index();
68 std::vector<basegfx::B2DRectangle> getTextRectangles();
69};
70
71/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
SearchStartPosition
std::unique_ptr< Implementation > mpImplementation
#define VCL_DLLPUBLIC
Definition: dllapi.h:29
index
SearchStartPosition meStartPosition
VectorGraphicSearchOptions(SearchStartPosition eStartPosition, bool bMatchCase, bool bMatchWholeWord)