LibreOffice Module svx (master)
1
include
svx
svdviter.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
* This file incorporates work covered by the following license notice:
10
*
11
* Licensed to the Apache Software Foundation (ASF) under one or more
12
* contributor license agreements. See the NOTICE file distributed
13
* with this work for additional information regarding copyright
14
* ownership. The ASF licenses this file to you under the Apache
15
* License, Version 2.0 (the "License"); you may not use this file
16
* except in compliance with the License. You may obtain a copy of
17
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
18
*/
19
20
#pragma once
21
22
#include <
svx/svxdllapi.h
>
23
#include <functional>
24
25
/*
26
27
Using this class, you can find out:
28
- SdrView* First/NextView()
29
- All Views in which a model is displayed
30
- All Views in which a certain page is visible (also as MasterPage)
31
- All Views in which a certain object is visible (also as MasterPage)
32
- SdrPageView* First/NextPageView()
33
- All PageViews in which a model is displayed
34
- All PageViews in which a certain page is visible (also as MasterPage)
35
- All PageViews in which a certain object is visible (also as MasterPage)
36
- vcl::Window* First/NextWindow()
37
- All Windows in which a model is displayed
38
- All Windows in which a certain page is visible (also as MasterPage)
39
- All Windows in which a certain object is visible (also as MasterPage)
40
You can specify if the selection is restricted to a certain page/object by
41
choosing the corresponding constructor.
42
43
Among others, the following are considered:
44
- Visibility state of the layer
45
- Visible Layer of MasterPages
46
- Multiple layer for group objects
47
48
Not considered are:
49
- Whether the pages/objects were already painted or if an Invalidate is still pending
50
- Whether the pages/objects in a Window are in a visible region
51
52
*/
53
54
class
SdrView
;
55
class
SdrModel
;
56
class
SdrPage
;
57
class
SdrObject
;
58
59
namespace
SdrViewIter
60
{
61
SVXCORE_DLLPUBLIC
void
ForAllViews
(
const
SdrPage
* pPage, std::function<
void
(
SdrView
*)> f);
62
SVXCORE_DLLPUBLIC
void
ForAllViews
(
const
SdrObject
* pObject, std::function<
void
(
SdrView
*)> f);
63
};
64
65
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
SdrModel
Definition:
svdmodel.hxx:149
SdrObject
Abstract DrawObject.
Definition:
svdobj.hxx:260
SdrPage
A SdrPage contains exactly one SdrObjList and a description of the physical page dimensions (size / m...
Definition:
svdpage.hxx:379
SdrView
Definition:
svdview.hxx:147
SdrViewIter
Definition:
svdviter.cxx:82
SdrViewIter::ForAllViews
void ForAllViews(const SdrPage *pPage, std::function< void(SdrView *)> f)
Definition:
svdviter.cxx:83
svxdllapi.h
SVXCORE_DLLPUBLIC
#define SVXCORE_DLLPUBLIC
Definition:
svxdllapi.h:35
Generated on Sun Jul 30 2023 04:27:39 for LibreOffice Module svx (master) by
1.9.3